我有一个名为property
的表,结构如下:
$sql = "CREATE TABLE property (
id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
seller_id INT(6) NOT NULL,
property_name VARCHAR(30) NOT NULL,
address VARCHAR(30) NOT NULL,
reg_date TIMESTAMP
)";
mysql_query($sql);
我还有另一个名为dealtype
的表:
$sql = "CREATE TABLE dealtype (
id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
seller_id INT(6) NOT NULL,
deal_type VARCHAR(30) NOT NULL,
FOREIGN KEY (property_id) REFERENCES property (id),
reg_date TIMESTAMP
)";
mysql_query($sql);
现在property_id
中的dealtype table
是id
表中property
的外键,但它不在php代码中工作。 <{1}}表已创建,但property
未创建。
我的错误在哪里?
答案 0 :(得分:1)
您需要在之前声明变量的类型为,并指定它是外键:
$sql = "CREATE TABLE dealtype (
id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
seller_id INT(6) NOT NULL,
deal_type VARCHAR(30) NOT NULL,
property_id int(6) unsigned,
reg_date TIMESTAMP,
FOREIGN KEY (property_id) REFERENCES property (id)
)";
据推测,seller_id
与sellers
表(或类似的)具有相似的关系。