Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/85.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Microsoft SQL Server Management Studio-尝试添加FK约束,出现错误:“0”;无效列…“;_Sql_Sql Server_Database - Fatal编程技术网

Microsoft SQL Server Management Studio-尝试添加FK约束,出现错误:“0”;无效列…“;

Microsoft SQL Server Management Studio-尝试添加FK约束,出现错误:“0”;无效列…“;,sql,sql-server,database,Sql,Sql Server,Database,我正在尝试添加外键约束以链接我的表,但是我不断遇到以下错误: 信息1769,第16级,状态1,第1行 外键“fk_customers_titles”引用了引用表“customers”中的无效列“title_id” 我已经创建了表及其列,还使用altertable语句声明了主键。但每当我尝试为任何表添加外键约束时,都会不断出现此错误 以下是我创建表格的方式: CREATE TABLE customers ( customer_id char_idtype, name

我正在尝试添加外键约束以链接我的表,但是我不断遇到以下错误:

信息1769,第16级,状态1,第1行
外键“fk_customers_titles”引用了引用表“customers”中的无效列“title_id”

我已经创建了表及其列,还使用
altertable
语句声明了主键。但每当我尝试为任何表添加外键约束时,都会不断出现此错误

以下是我创建表格的方式:

CREATE TABLE customers
(
 customer_id    char_idtype,
 name           varchar(50)     NOT NULL,
 contact_name   varchar(30),
 address        varchar(50),
 city           varchar(20),
 region         varchar(15),
 country_code   varchar(10),
 country        varchar(15),
 phone          varchar(20),
 fax            varchar(20)
);
GO

CREATE TABLE titles
(
 title_id       char(3)         NOT NULL,
 description    varchar(35)     NOT NULL
);
GO
这就是我添加主键的方式:

ALTER TABLE customers
ADD PRIMARY KEY (customer_id);
GO

ALTER TABLE titles
ADD PRIMARY KEY (title_id);
GO
以下是我添加外键约束的方式:

ALTER TABLE customers
ADD CONSTRAINT fk_customers_titles 
FOREIGN KEY (title_id)
REFERENCES titles(title_id);
我正在使用Microsoft SQL Server Management Studio 2012

非常感谢你的帮助,
谢谢

我认为错误很明显:
客户
没有
标题\u id
。你需要添加它

ALTER TABLE customers ADD title_id       char(3);

或者把它放在
CREATE TABLE
语句中。

我认为错误很明显:
客户
没有
标题id
。你需要添加它

ALTER TABLE customers ADD title_id       char(3);

或者将其放在
创建表
语句中。

您的脚本应该如下所述

CREATE TABLE titles
(
 title_id       char(3)      Primary key   NOT NULL,
 description    varchar(35)     NOT NULL
);
GO




CREATE TABLE customers
(
 customer_id     char(3) primary key, 
 title_id       char(3)     foreign key references titles,
 name           varchar(50)  NOT NULL,
 contact_name   varchar(30),
 address        varchar(50),
 city           varchar(20),
 region         varchar(15),
 country_code   varchar(10),
 country        varchar(15),
 phone          varchar(20),
 fax            varchar(20)
);
GO

您的脚本应该如下所述

CREATE TABLE titles
(
 title_id       char(3)      Primary key   NOT NULL,
 description    varchar(35)     NOT NULL
);
GO




CREATE TABLE customers
(
 customer_id     char(3) primary key, 
 title_id       char(3)     foreign key references titles,
 name           varchar(50)  NOT NULL,
 contact_name   varchar(30),
 address        varchar(50),
 city           varchar(20),
 region         varchar(15),
 country_code   varchar(10),
 country        varchar(15),
 phone          varchar(20),
 fax            varchar(20)
);
GO