csdade多数据库名称
/**
* 测试方法
* */
public function cs(){
Db::connect('csdade')->startTrans();
try {
$data = Db::connect('csdade')->table('p_order')->whereRaw("billid=2")->select()->toArray();
foreach ($data as $key=>$it){
$orderArray = [];
//删除数组中字段ROW_NUMBER
foreach ($it as $key1=>$it1){
if($key1 != "ROW_NUMBER" && $key1 != "billid"){
//echo "{$key1}:{$it1}\n";
$orderArray[$key1] = $it1;
}
}
$billid = Db::connect('csdade')->table('p_order')->max('billid');
$orderArray['billid'] = $billid+1;
$orderArray['billcode'] = "PO-2024-04-00001";
Db::connect('csdade')->table("p_order")->insert($orderArray);
$detail = Db::connect('csdade')->table('p_orderdetail')->whereRaw("billid={$it['billid']}")->select()->toArray();
foreach ($detail as $key1=>$item){
$order = [];
foreach ($item as $key2=>$item1){
if($key2 != "ROW_NUMBER" && $key2 != "billid"){
//echo "{$key1}:{$it1}\n";
$order[$key2] = $item1;
}
}
$p_order = Db::connect('csdade')->table("p_order")->where('billcode',$orderArray['billcode'])->select()->toArray();
$order['billid'] = $p_order[0]['billid'];
Db::connect('csdade')->table("p_orderdetail")->insertGetId($order);
}
}
//$s=1/w;
// 提交事务
Db::connect('csdade')->commit();// 提交事务
} catch (\Exception $e) {
// 回滚事务
Db::connect('csdade')->rollback();//回滚事务
echo "{$e->getMessage()}";
}
}