繁体   English   中英

运行代码时,我在 Java Derby 数据库中收到此外键错误

[英]I am getting this foreign key error in Java Derby database when I run the code

运行代码时,我在 Java Derby 数据库中收到此外键错误

CREATE TABLE PURCHASE (
    $PURCHASEID INT NOT NULL GENERATED ALWAYS AS IDENTITY,$
    $PURCHASEDATE DATE,$
    $PURCHASEQUANTITY INT,$
    $CHICPRICE DOUBLE,$
    $CUSTNIC VARCHAR(14) NOT NULL,$
    $PRIMARY KEY (PURCHASEID)$
       $ FOREIGN KEY (CUSTNIC) REFERENCES CUSTOMER(CUSTNIC)$
);

[异常,错误代码 30,000,SQLState 42X01] 语法错误:在第 8 行第 9 列遇到“FOREIGN”。第 8 行第 9 列

如果在主键后加逗号,它应该可以正常工作

CREATE TABLE PURCHASE (
    $PURCHASEID INT NOT NULL GENERATED ALWAYS AS IDENTITY,$
    $PURCHASEDATE DATE,$
    $PURCHASEQUANTITY INT,$
    $CHICPRICE DOUBLE,$
    $CUSTNIC VARCHAR(14) NOT NULL,$
    $PRIMARY KEY (PURCHASEID),$
       $ FOREIGN KEY (CUSTNIC) REFERENCES CUSTOMER(CUSTNIC)$
);

试试这个

CREATE TABLE PURCHASE (
    $PURCHASEID INT NOT NULL GENERATED ALWAYS AS IDENTITY,$
    $PURCHASEDATE DATE,$
    $PURCHASEQUANTITY INT,$
    $CHICPRICE DOUBLE,$
    $CUSTNIC VARCHAR(14) NOT NULL,$
    $PRIMARY KEY (PURCHASEID)$
       $FOREIGN KEY (CUSTNIC) REFERENCES CUSTOMER(CUSTNIC)$
);

尝试创建表,然后添加外键约束

alter table PURCHASE add FOREIGN KEY (CUSTNIC) 
REFERENCES CUSTOMER (CUSTNIC)  

并且在 FOREIGN 之前似乎有一个“,”缺失

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM