mysql多表移动数据(插入和删除)
我需要执行多表移动,我正在这样做:mysql多表移动数据(插入和删除),mysql,Mysql,我需要执行多表移动,我正在这样做: $result = mysql_query("INSERT INTO `fiscal_rad_test` (`objectid`, `dan`, `smena`, `racun`, `owner`, `konobar`, `sto`, `tip`, `konto`, `datum`, `vreme`, `tiprobe`, `roba`, `naziv`, `kolicina`, `cena`, `ukupno`, `nabavna`, `stanje`, `
$result = mysql_query("INSERT INTO `fiscal_rad_test` (`objectid`, `dan`, `smena`, `racun`, `owner`, `konobar`, `sto`, `tip`, `konto`, `datum`, `vreme`, `tiprobe`, `roba`, `naziv`, `kolicina`, `cena`, `ukupno`, `nabavna`, `stanje`, `porez`, `kategorija`)
SELECT `objectid`,
`dan`,
`smena`,
`racun`,
`owner`,
`konobar`,
`sto`,
`tip`,
`konto`,
`datum`,
`vreme`,
`tiprobe`,
`roba`,
`naziv`,
`kolicina`,
`cena`,
`ukupno`,
`nabavna`,
`stanje`,
`porez`,
`kategorija`
FROM `fiscal_rad_temp_test`
WHERE objectid = '$object'");
$transacitionresult = mysql_query("INSERT INTO `fiscal_transactions` (`objectid`, `dan`, `smena`, `owner`, `konobar`, `sto`, `tip`, `konto`, `datum`, `vreme`, `racun`, `data`, `ukupno`)
SELECT `objectid`,
`dan`,
`smena`,
`owner`,
`konobar`,
`sto`,
`tip`,
`konto`,
`datum`,
`vreme`,
`racun`,
`data`,
`ukupno`
FROM `fiscal_transactions_temp`
WHERE objectid = '$object'");
$delete = mysql_query("DELETE FROM `fiscal_transactions_temp` WHERE objectid = '$object'");
$delete = mysql_query("DELETE FROM `fiscal_rad_temp_test` WHERE objectid = '$object'");
这样做是否更好、更可靠?
我是否可以排除一些错误,可能是某些行没有用这种方法删除?唯一的潜在问题是插入和删除之间是否有中断。如果您使用的是InnoDB,则可以使用事务使其更安全。您是否在插入选择中选择了所有字段?如果是,那么您可以用一个*like:SELECT*FROM…来替换所有的选项。。。这样,您的查询将更加清晰。我同意@Barmar。看一下本教程来进行事务处理:不,我实际上是在两个表中都选择了除ID以外的所有字段,以自动获得两个表中的自动递增ID字段