![]() |
1
2
我认为你对“查阅表格”的使用有些错误。通常来说,查找表是代码或引用数据表。它可能由代码和描述或代码扩展组成。这些表的目的是为受限列(如客户类型或优先级代码)提供允许值的LSIT。这类表通常被称为“常设数据”,因为它几乎没有变化。在查找表中定义此数据的值是,可以在外键中使用这些数据并填充下拉列表和值列表。 您所描述的情况略有不同:
这两个表都是应用程序数据表。客户和订单记录是动态的。现在,从客户表中检索附加数据来显示订单数据显然是有效的,从这个意义上说,客户是一个“查阅表”。更有针对性的是 起源 ORDER表,因为它具有ORDER上的外键引用的主键。 无论如何,构建一个视图来捕获订单和客户之间的连接逻辑。当构建在多个地方使用相同联接表的应用程序时,这样的视图非常有用。 |
![]() |
2
2
创建一个视图可以让您像查询时那样“实时”地表示数据。这是以服务器上更高的负载为代价的,因为它必须确定每个查询的值。 根据表大小、数据库实现和视图定义的复杂性,这可能很昂贵。 另一方面,查阅表格通常是“手动”填写的,也就是说,不是每一次对它的查询都会导致从多个表格中获取值的操作非常昂贵。相反,如果基础数据发生变化,程序必须负责更新查找表。 通常查找表适合于那些自我改变的事物,但是经常被阅读。另一方面,视图虽然执行起来更为昂贵,但却是最新的。 |
![]() |
3
0
阅读本教程,当需要查找表时,您可能会找到有用的信息: |
![]() |
4
0
下面是一个查找表的示例。我们有一个跟踪陪审员的系统,其中一个表是jurrorstatus。此表包含陪审员的所有有效状态代码:
代码:值
这是有效代码的查阅表格。 视图就像一个查询。 |
![]() |
5
0
只需学习编写SQL查询就可以得到您所需要的。不需要创建视图!视图在许多情况下都不适合使用,尤其是当您开始将它们建立在其他视图之上时,这些视图会破坏性能。不要将视图用作查询写入的简写。 |
![]() |
Community wiki · SQL语法新手 1 年前 |
![]() |
KateMak · 是否将多行中的多列与唯一id组合? 1 年前 |
![]() |
Karuna · SQL中列内的筛选器[重复] 1 年前 |
![]() |
Irvan Affandy · 为另一个选择选择声明的键 1 年前 |
![]() |
Community wiki · 这个MySQL语句出了什么问题? 1 年前 |
![]() |
Community wiki · 优化从同一表中提取的多列的查询 1 年前 |