我建立了一个数据库A,里面已经通过如下建立了表T1:CREATE TABLE [dbo].[T1](
[Query] [varchar](50) NOT NULL,
[Title] [varchar](max) NULL,
[Snippet] [varchar](max) NULL,
[LinkURL] [varchar](max) NULL,
[DisplayURL] [varchar](max) NULL,
CONSTRAINT [PK_Query] PRIMARY KEY CLUSTERED
([Query])
WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]运行成功之后,我现在想创建一个表T2:
CREATE TABLE [dbo].[T2](
[Query] [varchar](50) NOT NULL,
[Title] [varchar](max) NULL,
[Snippet] [varchar](max) NULL,
[LinkURL] [varchar](max) NULL,
[DisplayURL] [varchar](max) NULL,
CONSTRAINT [PK_Query] PRIMARY KEY CLUSTERED
([Query])
WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
运行时候报错:
Msg 2714, Level 16, State 4, Line 13
There is already an object named 'PK_Query' in the database.
Msg 1750, Level 16, State 0, Line 13
Could not create constraint. See previous errors. 请问大虾们是怎么回事?难道我不能将两张无关联的表的主键设置成同一名称?
谢谢大家~~~~~~
[Query] [varchar](50) NOT NULL,
[Title] [varchar](max) NULL,
[Snippet] [varchar](max) NULL,
[LinkURL] [varchar](max) NULL,
[DisplayURL] [varchar](max) NULL,
CONSTRAINT [PK_Query] PRIMARY KEY CLUSTERED
([Query])
WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]运行成功之后,我现在想创建一个表T2:
CREATE TABLE [dbo].[T2](
[Query] [varchar](50) NOT NULL,
[Title] [varchar](max) NULL,
[Snippet] [varchar](max) NULL,
[LinkURL] [varchar](max) NULL,
[DisplayURL] [varchar](max) NULL,
CONSTRAINT [PK_Query] PRIMARY KEY CLUSTERED
([Query])
WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
运行时候报错:
Msg 2714, Level 16, State 4, Line 13
There is already an object named 'PK_Query' in the database.
Msg 1750, Level 16, State 0, Line 13
Could not create constraint. See previous errors. 请问大虾们是怎么回事?难道我不能将两张无关联的表的主键设置成同一名称?
谢谢大家~~~~~~
你这个MAX是啥值啊?自己定义的一个变量?
CONSTRAINT [PK_Query] PRIMARY KEY CLUSTERED CONSTRAINT [PK_Query] PRIMARY KEY CLUSTERED 一个[PK_Query] 改成别的就可以了
[Query] [varchar](50) NOT NULL,
[Title] [varchar](max) NULL,
[Snippet] [varchar](max) NULL,
[LinkURL] [varchar](max) NULL,
[DisplayURL] [varchar](max) NULL,
CONSTRAINT [PK_Query] PRIMARY KEY CLUSTERED
([Query])
WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF,
IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
CREATE TABLE [dbo].[T2](
[Query] [varchar](50) NOT NULL,
[Title] [varchar](max) NULL,
[Snippet] [varchar](max) NULL,
[LinkURL] [varchar](max) NULL,
[DisplayURL] [varchar](max) NULL,
CONSTRAINT [PK_Query1] PRIMARY KEY CLUSTERED
([Query])
WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF,
IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) )
你在创建表的时候,把定义主键的这个PRIMARY KEY放在这个字段后面就不会报错了。系统会自动创建主键名的