我正在尝试将数据从一个表单插入到多个MySQL表中(使用MYSQL语法,虽然我将在某个时候迁移应用程序MYSQLi - 这可能现在不相关,但我想我会说它停止“你应该在MYSQLi 中做这个”不可避免地遵循的评论 - 我知道我应该,我会......很快......但由于我控制的一些原因,我还不能,我们仍然需要这个工作)。
基本上,我正在插入“多对多”表结构(即可以是许多类别的一部分的实例,以及可以包含许多实例的类别)。主表Instances
包含所有主要数据(在这种情况下,地图上的位置 - 例如'Acme Cafe','Lakeside Picnic Area'等);另一个表Categories
包含instances
表中所有地点的所有可能类别 - 例如,'Cafe','Pub','View Point'等;和一个联接表Instance_Categories
,将Instances
表中的位置连接到Categories
表中的类别。
PHP表单包含以下字段:
Reference
(一个9位数的随机生成的标识符,用于标识Instance_Categories
表中包含许多类别的实例)Name
(文本框)Address
(文本框)Phone
(文本框)Tick-box
个字段(其中8个)。 Instances
表格包含以下列
ID
(表格中唯一)Reference
(请参阅上面的表单输入)Name
Address
Phone
Categories
表格包含以下列
ID
(表格独有)Category
(varchar)Category_Ref
(用于标识连接Instances_Categories
表中的引用的数字) Instances_Categories
表格包含以下列:
ID
(表格独有)Instance_Ref
(来自上面的表单输入)Category_Ref
(与上面的Categories
表相关)如何制定INSERT
语句以便将数据插入我的数据库?我可以为每个表格制定一个插入命令,并从同一个“提交”按钮一个接一个地运行它们吗?我将如何获取insert命令以动态地将更多行插入Instances_Categories
表,具体取决于选择了多少类别复选框?我正在撕扯我的头发!
答案 0 :(得分:0)
如果您想要使用一个查询插入多个表,则不能。
您可以使用交易,但只需运行多个查询并将其称为一天。