首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在SQLite中创建外键?

如何在SQLite中创建外键?
EN

Stack Overflow用户
提问于 2016-07-22 12:01:17
回答 2查看 26关注 0票数 0

我已经创建了一个表,下面是代码:

代码语言:javascript
复制
CREATE TABLE "Préstamo_Biomédica" (
    ID INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL,
    Entregado CHAR(100),
    Fech_Pres DATE, 
    Fech_Devu DATE,
    Nota TEXT
)

我试图用下面的代码创建一个外键表:

代码语言:javascript
复制
CREATE TABLE Inventario_Biomédica (
    Id_Pieza INT PRIMARY KEY,
    Nom_Pieza CHAR(100),
    Cantidad INT,
    Des_Pieza TEXT,
    Gastable BIT,
    Fech_Ent DATE,
    P_Módulo BIT,
    FOREIGN KEY (ID) REFERENCES Préstamo_Biomédica(ID_Préstamo),
)

希望你们能帮我..。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-07-22 12:35:15

您应该只在标识符中使用ASCII字符。如果没有,你必须引用他们的话。

要获得自动递增 ID,必须使用整数,而不是INT。

外键子句引用表的列列表中必须存在的列。父表/列名位于引用之后:

代码语言:javascript
复制
CREATE TABLE "Inventario_Biomédica" (
    Id_Pieza INTEGER PRIMARY KEY,
    Nom_Pieza CHAR(100),
    Cantidad INT,
    Des_Pieza TEXT,
    Gastable BIT,
    Fech_Ent DATE,
    "P_Módulo" BIT,
    "ID_Préstamo" INT,
    FOREIGN KEY ("ID_Préstamo") REFERENCES "Préstamo_Biomédica"(ID),
);
票数 0
EN

Stack Overflow用户

发布于 2016-07-22 12:12:39

代码语言:javascript
复制
CREATE TABLE "Préstamo_Biomédica" (
ID INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL,
Entregado CHAR(100),
Fech_Pres DATE, 
Fech_Devu DATE,
Nota TEXT
)
代码语言:javascript
复制
CREATE TABLE Inventario_Biomédica (
Id_Pieza INT PRIMARY KEY,
Nom_Pieza CHAR(100),
Cantidad INT,
Des_Pieza TEXT,
Gastable BIT,
Fech_Ent DATE,
P_Módulo BIT,
FOREIGN KEY (ID_Préstamo) REFERENCES Préstamo_Biomédica(ID),
)

FOREIGN KEY后面给外键列名,在REFERENCES之后给父表主键列

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38525926

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档