我有19个表都有一个名为CompanyID
的列设置为引用company
表的主键CompanyID设置为auto_increment。为所有条目自动创建ID到具有相同外键的表中
有没有一种方法可以插入所有表中,而不必在每个查询中指定CompanyID?因此,如果我先插入company
表,它将自动获得一个CompanyID,并且我需要使用它来插入到其他19个表中,但是如何获取此信息?
我能想到的唯一方法是使用php自动生成一个ID,但我不喜欢这种方法,因为它不会遵循我想要使用的1,2,3约定。另外一种方法是将信息插入到company
中,插入后将其选中,并将公司名称与CompanyID相匹配,并将其设置为我的脚本中的变量,但这似乎是很多额外的废话。有没有更好的办法?希望这是有道理的。
'SELECT @myid = LAST_INSERT_ID();'? (但是如果你告诉我们你使用了_which_mysql接口,我们可能会给你一个更好的选择)。 – Wrikken
通过界面你的意思是phpmyadmin或PDO? – Yamaha32088
'PDO'是我寻找的答案:)。 ['PDO :: lastInsertId()'](http://www.php.net/manual/en/pdo.lastinsertid.php)是一个更好的选择,然后手动搜索或运行该查询。请注意,edcaracas建议将其制作成一个程序并不是一件坏事。 – Wrikken