【发布时间】:2011-02-16 12:43:52
【问题描述】:
是否有一些标准的方法来命名 SQL Server 的索引?似乎主键索引被命名为 PK_ 而非聚集索引通常以 IX_ 开头。除了唯一索引之外,还有其他命名约定吗?
【问题讨论】:
标签: sql-server naming-conventions indexing
是否有一些标准的方法来命名 SQL Server 的索引?似乎主键索引被命名为 PK_ 而非聚集索引通常以 IX_ 开头。除了唯一索引之外,还有其他命名约定吗?
【问题讨论】:
标签: sql-server naming-conventions indexing
是否值得为与外键关联的索引使用特殊前缀?我想是的,因为它提醒我默认情况下不会创建外键索引,因此更容易查看它们是否丢失。
为此,我使用与外键名称匹配的名称:
FK_[table]_[foreign_key_table]
或者,同一张表上存在多个外键
FK_[table]_[foreign_key_table]_[foreign_key_field]
【讨论】:
我知道一个老话题,但我想我会投入 2 美分的价值
示例;
NCAK_AccountHeader_OrganisationID_NextDate
其中 NCAK :非集群、唯一、AccountHeader :表和 OrganisationID_NextDate :列。
【讨论】:
我用
主键的PK_
UK_ 用于唯一键
IX_ 用于非聚集非唯一索引
UX_ 用于唯一索引
我所有的索引名称都采用<index or key type>_<table name>_<column 1>_<column 2>_<column n>
【讨论】:
我通常通过表名和它们包含的列来命名索引:
ix_tablename_col1_col2
【讨论】: