执行MySql更新报错:error code [1785]

原创 2015年07月08日 20:26:22

应用连接MySql数据库,报错,报错信息如下:

### Error updating database.  Cause: java.sql.SQLException: When @@GLOBAL.ENFORCE_GTID_CONSISTENCY = 1,
 updates to non-transactional tables can only be done in either autocommitted statements or single-statement transactions, 
and never in the same statement as updates to transactional tables.



### Cause: java.sql.SQLException: When @@GLOBAL.ENFORCE_GTID_CONSISTENCY = 1, updates to non-transactional tables can only be done in either autocommitted statements or single-statement transactions, and never in the same statement as updates to transactional tables.
; uncategorized SQLException for SQL []; SQL state [HY000]; error code [1785]; When @@GLOBAL.ENFORCE_GTID_CONSISTENCY = 1, updates to non-transactional tables can only be done in either autocommitted statements or single-statement transactions, and never in the same statement as updates to transactional tables.; nested exception is java.sql.SQLException: When @@GLOBAL.ENFORCE_GTID_CONSISTENCY = 1, updates to non-transactional tables can only be done in either autocommitted statements or single-statement transactions, and never in the same statement as updates to transactional tables.

 error code [1785]

通过各种查询发现是建表语句和数据库版本的的问题。

本地服务器版本:5.1.73

服务器版本:5.6


而在建表语句中,表的类型为:

ENGINE=MyISAM

改为:InnoDB类型即可。更改的地方在:


再次执行,SQL即可成功执行。

InnoDB和MyISAM是许多人在使用MySQL时最常用的两个表类型,这两个表类型各有优劣,视具体应用而定。基本的差别为:MyISAM类型不支持事务处理等高级处理,而InnoDB类型支持。MyISAM类型的表强调的是性能,其执行数度比InnoDB类型更快,但是不提供事务支持,而InnoDB提供事务支持已经外部键等高级数据库功能。



版权声明:本文为博主原创文章,转载请注明原文链接。

MYSQL— perror 错误码详情

[root@localhost ~]# cat test_nothread.py import paramiko import threading import os def ssh2(ip,use...
  • daohengshangqian
  • daohengshangqian
  • 2015年12月04日 21:27
  • 33147

Mysql-error code汇总

OS error code 1: Operation not permitted OS error code 2: No such file or directory OS err...
  • wenxuechaozhe
  • wenxuechaozhe
  • 2016年07月03日 15:19
  • 16505

MySQL问题:perror(1875),Statement violates GTID consistency

版本升级时,联调测试出现如下错误: The error occurred while setting parameters SQL: delete from tenant_token ...
  • poxiaonie
  • poxiaonie
  • 2017年07月13日 16:13
  • 574

git 入门

使用git来进行版本控制(同svn 为了得一个项目的拷贝  git clone   url">user_name@>url  红色部分可选 git clone /home/git/abc  /...
  • zlgkaixin68
  • zlgkaixin68
  • 2013年08月23日 14:57
  • 735

MySQL 错误一例 ERROR 1785 (HY000) @@GLOBAL.ENFORCE_GTID_CONSISTENCY = 1..

MySQL5.6倒入实例数据库 sakila 的时候出现了如下的错误 liuzhizhi@lzz-rmbp|sakila-db # mysql -uroot -p < sakila-data.sql ...
  • lzz957748332
  • lzz957748332
  • 2017年03月16日 22:35
  • 1281

数据库升级到mysql5.6遇到的数据表ENGINE问题

某数据表更新时出现一下异常: java.sql.SQLException: When @@GLOBAL.ENFORCE_GTID_CONSISTENCY = 1, updates to non-...
  • zyf_balance
  • zyf_balance
  • 2015年01月16日 12:57
  • 688

mysql 5.6参数列表

Table 5.3 System Variable Summary Name Cmd-Line Option File System Var Var ...
  • shaochenshuo
  • shaochenshuo
  • 2016年01月25日 11:42
  • 661

.NET Data Access Architecture Guide

Building Distributed Applications.NET Data Access Architecture Guide Related Linkspatterns & practic...
  • airtl117
  • airtl117
  • 2007年03月12日 16:42
  • 2722

MySQL主从复制实战 - 基于GTID的复制

MySQL主从复制实战 - 基于GTID的复制基于GTID的复制简介基于GTID的复制是MySQL 5.6后新增的复制方式.GTID (global transaction identifier) 即...
  • Solarison
  • Solarison
  • 2017年03月05日 16:28
  • 2375

MySQL GTID使用小结

1设置gtid文档GTID(GlobalTransaction ID)是对于一个已提交事务的编号,并且是一个全局唯一的编号。GTID实际上是由UUID+TID组成的。其中UUID是一个MySQL实例的...
  • mchdba
  • mchdba
  • 2016年12月13日 23:46
  • 5341
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:执行MySql更新报错:error code [1785]
举报原因:
原因补充:

(最多只允许输入30个字)