thinkphp5.0中往表中添加多条记录,怎么获取到所有添加的ID?
$file=explode(",",$_POST['file']);//var_dump($file);exit;$file2=array_filter($file);f...
$file = explode(",",$_POST['file']);
//var_dump($file);exit;
$file2 = array_filter($file);
foreach ($file2 as $v){
$insert = Db::execute('insert into files(file) value ("'.$v.'")');
}
怎么获取到$insert的所有值(只返回了一个ID)
var_dump($insert);exit;
使用的是tp5框架(5.0.5)的 展开
//var_dump($file);exit;
$file2 = array_filter($file);
foreach ($file2 as $v){
$insert = Db::execute('insert into files(file) value ("'.$v.'")');
}
怎么获取到$insert的所有值(只返回了一个ID)
var_dump($insert);exit;
使用的是tp5框架(5.0.5)的 展开
3个回答
2017-12-06 · 知道合伙人互联网行家
关注
展开全部
你好,用sql语句是不可能实现的,我们可以通过事务来实现,也就是说,SqlCommand的CmdText属性在一个方法当中可以赋多个SQL语句 SqlConnection sqlConnection = new SqlConnection(); ...初始化连接 // 开启事务 SqlTransaction sqlTransaction = sqlConnection.BeginTransaction(); // 将事务应用于Command SqlCommand sqlCommand = new SqlCommand(); sqlCommand.Connection = sqlConnection; sqlCommand.Transaction = sqlTransaction; sqlCommand.CmdText=第一个sql语句 sqlCommand.ExcuteNoneQuery(); sqlCommand.CmdText=第二个sql语句 sqlCommand.ExcuteNoneQuert(); try { // 利用sqlcommand进行数据操作 ... // 成功提交 sqlTransaction.Commit(); } catch(Exception ex) { // 出错回滚 sqlTransaction.Rollback(); } 如果在执行第二次SQL语句是出错了,那么就会到Catch异常中,执行回滚,那么第一次执行的也同样回滚了,所以必须2个都一行成功才往数据库中提交这里是用了2次SQL语句,如果你想用1个语句同时操控2个表的话,就要用到存储过程或者是触发器,存储过程和触发器
追问
大佬您好!请问使用tp5框架也是那样写吗?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询