CREATE TABLE Article( 商品号 CHAR(10), 商品名 CHAR(10), 单价 FLOAT(8), 库存量 INT); CREATE TABLE Customer( 顾客号 CHAR(10), 顾客名 CHAR(10), 性别 CHAR(2), 年龄 INT); CREATE TABLE OrderItem( 商品号 CHAR(10), 商品名 CHAR(10), 数量 INT, 购买价 FLOAT(8), 日期 DATETIME); ALTER TABLE Article ADD CONSTRAINT CK_单价 CHECK (单价>0); ALTER TABLE orderitem ADD CONSTRAINT FK_article_orderitem FOREIGN KEY(商品号) REFERENCES article (商品号);
时间: 2023-11-21 22:04:04 浏览: 85
根据你提供的代码,你创建了三个表:Article、Customer和OrderItem。在添加外键约束时,你想将OrderItem表中的商品号列作为外键引用Article表中的商品号列。
根据你提供的ALTER TABLE语句,添加外键约束的语法是正确的。但是,在执行ALTER TABLE语句之前,确保Article表中的商品号列已经创建了一个唯一索引或主键约束。
以下是一个示例,展示如何在创建Article表时添加主键约束:
```sql
CREATE TABLE Article(
商品号 CHAR(10) PRIMARY KEY,
商品名 CHAR(10),
单价 FLOAT(8),
库存量 INT
);
```
确保在执行ALTER TABLE语句之前,Article表中的商品号列已经添加了一个唯一索引或主键约束。这样,添加外键约束时就不会出现错误代码 1215 了。
如果问题仍然存在,请提供更多的信息,以便我能够给出更具体的解决方案。
阅读全文