8

我想使用 Oracle SQL Developer 连接到 MySQL 服务器,但禁用了自动提交。默认情况下,所有 MySQL 连接都启用了自动提交,这很奇怪。

SQL Developer 中的全局设置未选中,并且

set autocommit=0;

导致错误

设置自动提交脚本命令强制关闭,因为连接级别自动提交已打开。

在连接的设置中,除了主机名、端口和用于数据库选择的下拉框外,没有其他选项。

我正在使用带有最新 JDBC 连接器 5.1 的 SQL Developer 3.2.10。

4

8 回答 8

10

在 Oracle SQL Developer 4中,设置已移动:

工具 > 首选项 > 数据库 > 高级 > 自动提交

默认为关闭。

选择:

set autocommit off;
于 2016-05-26T10:35:06.557 回答
3

如果您尝试使用,您将遇到错误

start transaction;

-- Your SQL statements

commit;

...在 SQLDeveloper 中的 MySQL 数据库上开箱即用(正如迈克尔在对另一个答案的评论中提到的那样。)

为了解决迈克尔在评论中提到的这个错误,您可以使用以下提示:

/*sqldev:stmt*/start transaction;

-- Your SQL statements

/*sqldev:stmt*/commit;

在此处找到此信息。

于 2013-11-27T17:17:31.200 回答
1

关闭 SqlDeveloper 中的自动提交选项。转到工具 -> 首选项 -> 数据库 -> ObjectViewer 参数,然后取消选中“设置自动提交”框。

于 2014-02-19T16:08:29.873 回答
0

用“开始事务”和“提交”将命令括起来。mysql 在“开始事务”上关闭自动提交,直到发出“提交”或“回滚”

于 2013-11-22T17:56:54.713 回答
0

Outils-->Preferences-->Fenetre SQL--> Validation automatique de transactions SQL 取消选中该复选框

于 2014-02-10T13:53:10.310 回答
0

您可以通过单击工具打开 AutoCommit | 首选项 打开数据库树 选择工作表参数 检查 SQL 工作表中的自动提交框

于 2015-01-08T13:06:04.047 回答
0
set autocommit=false;--or true
--comment required/**/
/*sqldev:stmt*/start transaction; 
--your sql
/*sqldev:stmt*/commit;
/*sqldev:stmt*/rollback;
于 2017-05-17T01:49:54.580 回答
-1

以系统管理员身份连接 sqlplus 并键入命令“SET AUTOCOMMIT OFF”,它作为命令关闭。如果您想检查它是否关闭,请键入命令“show autocommit”,它会显示为“autocommit OFF”

于 2014-11-10T12:29:12.060 回答