php如何同时向两个关联的表中插入数据? 5
现在需要统计学生的手机信息,设计了两个表:表1为学生信息tb_stu,字段为stu_id(自增)、name,表2为手机信息tb_cellphone,字段为id(自增)、m...
现在需要统计学生的手机信息,设计了两个表:表1为学生信息tb_stu,字段为stu_id(自增)、name,表2为手机信息tb_cellphone,字段为id(自增)、model(型号)、stu_id。两个表通过stu_id关联。
现在有一个表单让老师输入信息,然后添加到两个表中:姓名(name)、手机型号(model)。表1好插入,但是表2不好弄,如何让stu_id对应起来,如果写成2句INSERT语句,担心如果一个表插入失败另一个成功,那么两个表就不能一一对应了。
问题:如何解决这个同步的问题?还有stu_id如何插入到表2中?
在线急等!! 展开
现在有一个表单让老师输入信息,然后添加到两个表中:姓名(name)、手机型号(model)。表1好插入,但是表2不好弄,如何让stu_id对应起来,如果写成2句INSERT语句,担心如果一个表插入失败另一个成功,那么两个表就不能一一对应了。
问题:如何解决这个同步的问题?还有stu_id如何插入到表2中?
在线急等!! 展开
1个回答
展开全部
哥啊。。。
你开个事务嘛。。两个同时成功再提交呗
要不就回滚
你开个事务嘛。。两个同时成功再提交呗
要不就回滚
更多追问追答
追问
初学者,不懂那么高深,能不能帮忙写出来
追答
<?php
try {
$dbh = new PDO('odbc:SAMPLE', 'db2inst1', 'ibmdb2',
array(PDO::ATTR_PERSISTENT => true));
echo "连接\n";
} catch (Exception $e) {
die("连接失败: " . $e->getMessage());
}
try {
$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$dbh->beginTransaction();
$dbh->exec("insert into staff (id, first, last) values (23, 'Joe', 'Bloggs')");
$dbh->exec("insert into salarychange (id, amount, changedate)
values (23, 50000, NOW())");
$dbh->commit();
} catch (Exception $e) {
$dbh->rollBack();
echo "失败" . $e->getMessage();
}
?>
你参考一下,比如中间的两个insert into就是你要的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询