php - 带有 INSERT 语句的简单 PHP CMS

标签 php mysql

我有一个简单的 php 特性租赁系统 CMS。现在我一直在向数据库添加新属性。

我的数据库:

properties: propertyId, imageId, town, num of rooms etc..

propertyid为主键自增,imageId为外键

images: imageId, image (image path with image name) 

imageId为主键自增:

因此,在我的 PHP 中,向数据库添加新属性时,我有 2 个 SQL 语句(如果这不是一个好的方法,请纠正我)。

首先插入图像值(“imagepath/imagename.jpg”)。

第二个查询插入属性值(town、numOfrooms 等)。

所以我已将图像插入数据库,然后我想将属性插入数据库,在单击添加属性后我进行了错误检查,

我收到消息“图像已成功保存”到数据库,但随后我收到错误消息:

Cannot add or update a child row: a foreign key constraint fails : CONSTRAINT properties_ibfk_4 FOREIGN KEY (imageId) REFERENCES images (imageId))

这是我首先插入图像然后插入属性的正确方法吗?

最佳答案

如果您尝试将属性添加到刚刚添加图像的同一行,则需要使用 UPDATE 而不是 INSERT 过度简化的示例

UPDATE propertyName WHERE image = imageIJustInserted

一旦插入/创建了一行,您实际上只能更新它。您无法再次插入其中。

关于php - 带有 INSERT 语句的简单 PHP CMS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31374091/

相关文章:

php - composer 依赖声明它没有 php-xsl

php - cakephp 中查找查询出错

php - Laravel 数据库使用表单数据更新

mysql - 通过触发器应用表的列权限

php - 检查单选按钮是否被选中并更新另一个字段

javascript - ajax发送的 radio 刷新值中的多个id

php - Joomla Mysql 查询问题

php - 正则表达式与 PDO Mysql

javascript - 我的 PHP 准备语句不起作用(在 bool 值上调用成员函数 bind_param())

php - Facebook 聊天如何运作?