首页 > 解决方案 > 语句的意外开头(prod_id)

问题描述

CREATE TABLE product
(
  product_id int primary key,
  product_name varchar(50) NOT null,
  category varchar(50)
  );
  CREATE TABLE orders
  (
    ORDER_id int primary key,
    prod_id int NOT null,
    quantity INT
    )
    CONSTRAINT fk_product_id
    FOREIGN KEY (prod_id)
    REFERENCES product (prod_id)
    );

标签: mysqlsqlxampp

解决方案


约束应该是表定义的一部分:

CREATE TABLE orders (
    ORDER_id int primary key,
    product_id int NOT null,
    quantity INT,
    CONSTRAINT fk_product_id
        FOREIGN KEY (product_id) REFERENCES product(product_id)
);

请注意,我将列命名为product_id并修复了对的引用product。如果可能,我喜欢使用相同名称的外键和主键。

您也可以ALTER TABLE在表定义之后使用它来定义它。


推荐阅读