业务经理

微信扫描以上二维码

028-61286886

技术咨询

附表数据入库怎么使一个入库失败另一个也失败

迅睿框架 更新 2019-11-04 16:36:59 yangyang
//多数据入库
$master_rt = \Phpcmf\Service::M()->db->table('1_news')->insertbatch($post[1]);//主表数据入库
$id = \Phpcmf\Service::M()->db->insertID();//获取第一条入库ID
$ids = range($id,$id+$master_rt-1);//生成入库数据ID数组
//将ID值融入附表数据结构
foreach($ids as $key => $value){
    $post[0][$key]['id'] = $value;
}
$schedule_rt = \Phpcmf\Service::M()->db->table('1_news_data_0')->insertbatch($post[0]);//附表数据入库

怎么使一个入库失败另一个也失败?

方案

  • 迅睿框架创始人 #1 · 2019-11-04 16:05:31
    什么叫怎么使一个入库失败另一个也失败?
  • ibennie #2 · 2019-11-04 16:07:25
    if $id 不为空再执行副表啊~ 这么简单都不会?
  • yangyang #3 · 2019-11-04 16:08:51
    回复迅睿框架创始人两表添加不是要整事务吗?
  • yangyang #4 · 2019-11-04 16:09:45
    ibennie
    两表添加不是要整事务吗?
  • ibennie #5 · 2019-11-04 16:11:11
    yangyang你懂的话就整事务咯,反正我不懂,哈哈,虽然之前学的时候有整过!我是看你上面的代码。做出的解释,本身你主表和副表入库是2条不同的 SQL,那你如果主表失败了,就可以用来判断是否要副表入库
  • yangyang #6 · 2019-11-04 16:17:14
    ibennie加个if判断也可以吗?
  • ibennie #7 · 2019-11-04 16:20:10
    yangyang为什么不可以?你看官方的源码,有多少写事务的
  • yangyang #8 · 2019-11-04 16:22:53
    ibennie
    image.png
  • ibennie #9 · 2019-11-04 16:25:38
    yangyang他这个代码已经是主表入库失败就取消入库的了,你看他的判断
    image.png
  • ibennie #10 · 2019-11-04 16:28:43
    if($master_rt){成功,则操作副表} esle{失败,直接返回错误提示} 就是用来判断主表是否入库成功的~
  • yangyang #11 · 2019-11-04 16:32:16
    ibennie如果是附表出错呢?
  • ibennie #12 · 2019-11-04 16:34:52
    yangyang好问题,完全可以举一反三..

    if($master_rt){


    if($schedule_rt){

    成功,提示入库成功

    } esle{

    失败,删除主表这个ID的那条数据,然后返回错误提示

    }


    } esle{

    失败,直接返回错误提示

    }

  • ibennie #13 · 2019-11-04 16:35:49
    满意答案
    yangyang当然,可能有更好写法,原理是这样的了,在你找到更好写法之前,你就这样写吧
  • yangyang #14 · 2019-11-04 16:36:59
    @ibennie:恩,谢谢,我之前就没想到过还可以再删主表

迅睿系统漏洞

外贸多语言建站
外贸多语言建站(2026-10-30)
修正对百度编辑器提取支持
AI文章生成器
AI文章生成器(2026-10-29)
任务插图设置数量
Bing站长数据
Bing站长数据(2026-10-29)
根据BING接口调整菜单 各个页面数据支持点击查看详情
按字段付费
按字段付费(2026-10-29)
按字段付费用于模块的字段设置一定的价格,当用户购买了此内容的字段时才...
泛解析站群系统
泛解析站群系统(2026-10-29)
AI队列增加清空按钮 表单提示语收敛 目录模式不接管主域名模板
邮件群发
邮件群发(2026-10-28)
修改模板的命名
自定义收款/捐款
自定义收款/捐款(2026-10-28)
自定义收款或捐款插件可以让用户快速创建付款或者捐款功能
CMS内容批量修改
CMS内容批量修改(2026-10-28)
后台批量修改文章内容的指定字段在插件后台可以任意指定字段
全站模块搜索
全站模块搜索(2026-10-28)
实现全模块一次性搜索内容,一键搜索全站内容精准搜索全部模块:
PHPCMSV9数据转换
PHPCMSV9数据转换(2026-10-28)
PHPCMS转入迅睿CMS操作步骤:https://www.xunr...