总体上同意楼上老兄的观点,字段命名应当是做到清晰明了,避免不必要的混淆就好了。
刚才说的不够清楚,给个更具体的例子,下面两张表的定义:
--1,
CREATE TABLE [dbo].[TIS_INSPECTION_POSITION] (
[TIP_NO] [int] NOT NULL ,
[TIP_FULL_NAME] [char] (30) COLLATE Chinese_PRC_CI_AS NOT NULL ,
[TIP_SHORT_NAME] [char] (30) COLLATE Chinese_PRC_CI_AS NOT NULL ,
[TIP_TYPE] [char] (10) COLLATE Chinese_PRC_CI_AS NOT NULL ,
[TIP_ENABLE] [char] (10) COLLATE Chinese_PRC_CI_AS NOT NULL
CONSTRAINT [TIP_KEY] PRIMARY KEY CLUSTERED (TIP_NO)
) ON [PRIMARY]
GO
--2,
CREATE TABLE [dbo].[TIS_DEVICE_TEAM] (
[TDT_NO] [int] NOT NULL ,
[TDT_NAME] [char] (30) COLLATE Chinese_PRC_CI_AS NOT NULL ,
[TDT_TIP_NO] [int] NOT NULL , --这个字段引用了上面一张表头一个字段
[TDT_DEVICE_NUM] [int] NOT NULL ,
[TDT_TYPE] [char] (10) COLLATE Chinese_PRC_CI_AS NOT NULL ,
[TDT_ORDER_TYPE] [char] (20) COLLATE Chinese_PRC_CI_AS NOT NULL ,
[TDT_ENABLE] [char] (10) COLLATE Chinese_PRC_CI_AS NOT NULL
CONSTRAINT [TDT_KEY] PRIMARY KEY CLUSTERED (TDT_NO)
) ON [PRIMARY]
GO
好了,现在说明一下:
我觉得这么处理还是挺清楚的,首先:每个字段都是唯一的;
其次,每个字段的名称里头可以看出来它是属于那个表的;
最后,即使是用到相同的字段定义,也可以体现引用的联系。
所以,完全不会出现
select schema.customer.customer_addressbook, ...
from SCHEMA.Customer
这样的语句,甚至如果想偷一点懒的话,可以每个地方都只写字段名,甚至
在联合查询的时候,反正每个字段都是唯一的。
可读性问题也不大,看字段的“前缀”就行了,表之间的引用联系也能看个大概。
哈哈,[
][
],请多指教,共同探讨~