2016-03-17 114 views
0

我有两个.bak文件,一个用于SIT数据库模式,另一个用于PROD。我使用SQL比较来比较它们。 下面是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 

非常感谢!

回答

2

这些是不相同的脚本:

  • 第一上创建列参数标识一个主键,意味着没有两行可以包含在此列
  • 第二相同的值创建了一个常规的索引,这将允许重复值。

两个聚集,但主要的/不是主要的区别是至关重要的!