java - 运行代码时,Java Derby 数据库中出现此外键错误
问题描述
运行代码时,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)$
);
推荐阅读
- android - Android 客户端无法使用套接字连接到服务器
- machine-learning - Weka 3.8 - 决策树 J48 似乎有正确的树来预测数据但在测试中失败
- json - VS Code 扩展中自动换行的自定义原因,以便在 Json 中使用多行值
- elasticsearch - 如何在弹性搜索文本搜索中匹配部分单词
- angular - 如何在 Angular Typescript 中传递模型名称
- excel - 检查表 1 中的日期是否在一个月内,表 2 中的日期旁边的返回值
- docker - .NET Core API docker 无法访问
- macos - 如何在 MacOS BigSur 的聚光灯下禁用网络搜索
- c++ - 用于识别潜在无符号整数溢出的警告(或其他方式)
- visual-studio-code - 如何从 vscode Jupyter 中的原生 Notebook 体验返回