我目前正在尝试将数据插入名为“customer_quote”的表格中,此表格充当“customer”表与之间的链接表“customer_tariffs”表。它还记录通过“user”表汇总数据的用户。
这是我的数据库的模式:
这是表格的截图,不允许我插入其中。
这是我插入数据库的过程:
以下是代码:
//code above this inserted data into customer table
//get id of row where data was just inserted
$sustomer->cid = mysql_insert_id($db);
//insert into customer_quote table
$database->query("INSERT INTO customer_quote (cid)
Values ('$customer->cid')");
**新错误消息**
'无法添加或更新子行:外键约束失败(
quote_system
。customer_quote
,CONSTRAINTfk_customer_quote_customer
FOREIGN KEY(cid
)参考{{1} }(customer
)ON DELETE NO ACTION ON UPDATE NO ACTION)'
正如您所看到的,错误反馈是无用的,因此经过大约三个小时的测试后,我得出结论,问题是“客户报价”表中的“cid”列。
它只接受某些值,但是我自己的php变量具有正确的值,可以通过phpmyadmin插入,如下面的屏幕截图所示。
所以它必须是我桌子上的约束或其他东西阻止我?
任何想法如何解决这个问题。
谢谢!
答案 0 :(得分:2)
你错误地把双引号错过了一个parens
更改行:
$database->query("INSERT INTO customer_quote (cid)
Values ('$customer->cid'");
到
$database->query("INSERT INTO customer_quote (cid)
Values ('$customer->cid')");
答案 1 :(得分:2)
我真的希望你的问题只是一个简单的错字,但你的查询不正确:
$database->query("INSERT INTO customer_quote (cid)
Values ('$customer->cid'");
应该是
$database->query("INSERT INTO customer_quote (cid)
Values ('$customer->cid')"); // added closing bracket on values
答案 2 :(得分:2)
你的插页结尾处有一个遗漏...
//insert into customer_quote table
$database->query("INSERT INTO customer_quote (cid) Values ('$customer->cid'");
应该是
//insert into customer_quote table
$database->query("INSERT INTO customer_quote (cid) Values ('$customer->cid')");
顺便说一句,有图片的好帖子等......
答案 3 :(得分:1)
你错过了一个括号:
"INSERT INTO customer_quote (cid) Values ('$customer->cid')"