我正在运行一个脚本以在 MySQL 数据库中插入一些数据,并且它在 MySQL 工作台中正常运行。但是,当我尝试通过 JDBC 从 Java 运行它时,出现错误。脚本是:
INSERT INTO `pa_record` (`username`, `pa_record_type`, `record_time`) VALUES (?, ?, CURRENT_TIMESTAMP);
SET @record_id := 1;
INSERT INTO `pa_crud` (`pa_record_id`, `table_name`) VALUES (@record_id, ?);
我从 JDBC 得到的错误是
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'SET @record_id := 1; INSERT INTO
pa_crud
(pa_record_id
,table_name
) VALUES' at line 2
有什么想法吗?
最佳答案
许多(大多数?)数据库访问库不允许在一次执行中执行多个语句;那些这样做的人通常需要通过更改设置来激活该功能。 它可能不是在提示 SET,而是在第一个查询结束后你根本没有得到任何东西。
关于java - 为什么我不能在 MySQL 的准备语句中设置变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44830659/