SQL Server外键参考

托利亚斯
CREATE TABLE users 
(
    id INTEGER PRIMARY KEY IDENTITY,
    name VARCHAR (128),
    email VARCHAR (128),
    pass VARCHAR (128),
    paid BIT,
    rank FLOAT,
    status INT,
    active BIT
);

CREATE TABLE books 
(
    id INTEGER PRIMARY KEY IDENTITY,
    FOREIGN KEY (owner) REFERENCES users (id),
    FOREIGN KEY (holder) REFERENCES users (id),
    name VARCHAR (128),
    author VARCHAR (128),
    year INTEGER,
    rank FLOAT,
    publisher VARCHAR (128)
);

错误清单:

消息1769,级别16,状态1,行18
外键“所有者”在引用表“书”中引用了无效的列“所有者”。

消息1750,级别16,状态0,第18行
无法创建约束。请参阅先前的错误。

戈登·利诺夫(Gordon Linoff)

您需要定义列以引用它们。您可以将所有定义放在一行中,如下所示:

CREATE TABLE books (
    id INTEGER PRIMARY KEY IDENTITY,
    owner INTEGER REFERENCES users(id),
    holder INTEGER REFERENCES users(id),
    name VARCHAR(128),
    author VARCHAR(128),
    year INTEGER,
    rank FLOAT,
    publisher VARCHAR (128)
);

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

SQL外键参考

来自分类Dev

外键上的外键-SQL Server

来自分类Dev

外键错误SQL Server

来自分类Dev

三个表上的 SQL Alchemy 外键参考

来自分类Dev

SQL Server:使用条件创建外键

来自分类Dev

SQL Server外键约束问题

来自分类Dev

SQL Server:添加外键错误

来自分类Dev

SQL Server外键数据问题

来自分类Dev

创建外键约束的SQL Server错误

来自分类Dev

SQL Server:约束和外键

来自分类Dev

SQL Server性能:具有外键约束的复合键

来自分类Dev

SQL外键外键

来自分类Dev

如何在SQL Server 2012中查找参考键?

来自分类Dev

SQL Server:使用多列外键创建表

来自分类Dev

几个外键和级联删除SQL Server

来自分类Dev

SQL Server-使用递归外键级联删除

来自分类Dev

跨多个表级别的SQL Server外键

来自分类Dev

CHECK CHECK之后,SQL Server外键仍然不受信任

来自分类Dev

在SQL Server中设置外键时出错

来自分类Dev

SQL Server外键约束引用无效表

来自分类Dev

SQL Server按外键分组并选择相关列

来自分类Dev

如何在SQL Server中设置外键

来自分类Dev

SQL Server:使用外键合并多个表

来自分类Dev

几个外键和级联删除SQL Server

来自分类Dev

在SQL Server中设置外键时出错

来自分类Dev

使用JOIN和外键插入SQL Server表

来自分类Dev

MS SQL Server 2012 自动递增和主键/外键

来自分类Dev

SQL Server - 条件/过滤外键。其他方式

来自分类Dev

SQL Server Switch 语句依赖于外键的位置