数据库架构比较 - 创建表

时间:2016-03-17 17:22:39

标签: sql-server database

我有两个.bak文件,一个用于SIT数据库模式,另一个用于PROD。我使用SQL Compare比较它们。 以下是CREATE TABLE的两个脚本。 你能看看并确认我的理解 -
这两个表之间的唯一区别是在SIT数据库中自动生成标识列。创建的聚簇索引在两者中都是相同的。

SIT

CREATE TABLE [core].[Parameters]
(
[ParameterId] [int] NOT NULL IDENTITY(1, 1),
[Class] [nvarchar] (50) COLLATE Latin1_General_CI_AS NULL
)
GO
-- Constraints and Indexes

ALTER TABLE [core].[Parameters] ADD CONSTRAINT [PK__Para__B45738C652593CB8] PRIMARY KEY CLUSTERED  ([ParameterId])
GO

PROD

CREATE TABLE [Core].[Parameters]
(
[ParameterId] [int] NOT NULL,
[Class] [nvarchar] (50) COLLATE Latin1_General_CI_AS NULL
)
GO
-- Constraints and Indexes

CREATE CLUSTERED INDEX [Para] ON [Core].[Parameters] ([ParameterId])
GO

非常感谢!

1 个答案:

答案 0 :(得分:2)

这些不是相同的脚本:

  • 第一个在ColumnId列上创建主键,这意味着此列中没有两行可能包含相同的值
  • 第二个创建一个常规索引,允许重复值。

两者都是群集的,但主要/非主要差异至关重要!