嗨,我想知道是否有可能使用JDBC执行这样的事情,因为它目前提供异常,即使它可以在MySQL查询浏览器中.
"SELECT FROM * TABLE;INSERT INTO TABLE;"
Run Code Online (Sandbox Code Playgroud)
虽然我确实意识到可以将SQL查询字符串拆分并且语句执行两次,但我想知道是否有一次性方法.
String url = "jdbc:mysql://localhost:3306/";
String dbName = "databaseinjection";
String driver = "com.mysql.jdbc.Driver";
String sqlUsername = "root";
String sqlPassword = "abc";
Class.forName(driver).newInstance();
connection = DriverManager.getConnection(url+dbName, sqlUsername, sqlPassword);
Run Code Online (Sandbox Code Playgroud) 我想在一次执行中执行多个查询或作业.像这样的东西,例如:
String query="select * from tab1;insert into tab1 values(...);update tab1..;delete from tab1...;"
Statement st = con1.createStatement();
ResultSet rs = st.executeQuery(query);
Run Code Online (Sandbox Code Playgroud)
或多个选择查询.查询将是动态的.
但是我无法做到这一点.运行以半冒号分隔的多个查询的方法是什么.
当我在oracle sql developer中运行SQL查询时它是可行的,但是在jdbc中这个查询不起作用并且捕获java.sql.SQLSyntaxErrorException:ORA-00922:缺少或无效选项.谁能帮助我?我的查询如下
CREATE GLOBAL TEMPORARY TABLE MY_TABLE (
ID VARCHAR2(30 BYTE) PRIMARY KEY,
NAME VARCHAR2(20 BYTE));
INSERT INTO MY_TABLE (
ID, NAME)
VALUES ('My_Id' , 'My_Name' );
Run Code Online (Sandbox Code Playgroud)