TEL:400-8793-956
当前位置:程序、服务器

查询回滚

提问者: 近期获赞: 浏览人数: 发布时间:2020-12-26 13:51:38

 问:我在哪里出错了....尽管我在$ this-> db-> trans_start(TRUE)中设置了第一个参数,但我的查询没有回滚。作为TRUE,查询仅在我删除$ this-> db-> trans_complete()时才回滚;

 
这是我的代码
 
$ this-> db-> trans_start(TRUE); //查询将回滚$ this-> db-> query('UPDATE tastybite.items SET name =“ cheeeeese” WHERE iditems =“ qw”'); for($ i = 0; $ i <10; $ i ++){$ this-> db-> query('INSERT INTO tastybite.product(name,price)VALUES(“ product10”,“ 122”)');
 
}
 
$ this-> db-> trans_complete();
 
 
答:代码本身似乎是正确的。但是,对您的问题的一种可能解释是表正在使用的存储引擎的类型。
 
MySQL不支持MyISAM引擎的事务。因此,如果您的表使用的是MyISAM,则codeIgniter无法执行任何操作。检查表正在使用的存储引擎。如果是MyISAM,请将其更改为InnoDB。
上一篇: Wordpress插件会干扰Wordpress中的模板
下一篇: 我正在使用PHP curl,如何通过HTTP身份验证发出请求?