使用primary和forgein键创建表

时间:2015-05-29 22:25:13

标签: mysql phpmyadmin

我试图用这个创建一个带有主键和外键的产品表。data http://i58.tinypic.com/2cyjy4n.jpg ...

这是我到目前为止尝试过的代码

    CREATE TABLE products
(
prod_id int NOT NULL,
prod_name int NOT NULL,
price varchar(15)
5on_hand varchar(15),
supp_id varchar(20),
PRIMARY KEY (prod_id),
FOREIGN KEY (supp_id)
);

任何帮助将不胜感激

2 个答案:

答案 0 :(得分:0)

外键是对另一个表中字段的引用。要指定外键,您必须指定指向的字段。数据库无法猜到这一点。

因此,猜测supp_id引用id表中的Suppliers,您的外键子句应如下所示:

FOREIGN KEY (supp_id) REFERENCES Supplier(id)

答案 1 :(得分:0)

我强烈鼓励以下事项:

  • 所有表都有一个主键列,它是一个整数并自动递增。
  • 名称应为字符串。
  • 价格应为小数。

所以,我认为这样的事情是恰当的:

CREATE TABLE Products (
    ProductId int NOT NULL auto_increment primary key,
    Name varchar(255) NOT NULL,
    Price decimal(19, 4),
    OnHand integer, -- assuming this is quantity on-hand
    SupplierId int,
    FOREIGN KEY (SupplierId) REFERENCES Suppliers(SupplierId)
);