MySQL的INSERT语句为两个表,在其他使用来自一个AI值(MySQL INSERT state

2019-10-18 02:28发布

我设计的数据库,并且需要在一个时间值插入两个表的声明。 我这样做的问题,是一个表需要一个值,这是在其他自动递增的事实。 我怎样才能做到这一点? 我的主机不支持使用外键的不幸。 (我用的MySQL)
我已经把表名和值以下。

Task

+ id (auto incremented value)
+ dataid (should have been foreign key to data.id- which will be auto incremented when +tatement is xecuted)
+ priority (task priority 1-100)
+ statusid (should have been foreign key to status.id - this value is given)
+ toc (TimeOfCreation - timestamp, will be set automatically)

Data

+ id (auto incremented value)
+ text (the text of the task/privatemsg/statusmsg etc.)

你们中的一个或有人可以帮我做一个插入statment从而有可能为我插入这个数据到这些表,其中data.id是自动递增,并存储在task.dataid?

text=fix login  
priority=99  
statusid=4

如果您有任何疑问,请询问。
提前致谢

Pyracell

Answer 1:

看到这一点:

http://dev.mysql.com/doc/refman/5.0/en/getting-unique-id.html

“如果你插入一条记录到包含AUTO_INCREMENT列一个表,你可以通过调用mysql_insert_id()函数来获取存储在该列中的值。”



Answer 2:

刚马上就第一个表的INSERT查询后,编写从第一个表中选择MAX(data.id)查询并插入该数值到task.dataid。



文章来源: MySQL INSERT statement into two tables, using AI value from one in the other