How to execute a set of related SQL instructions w

2019-07-31 01:21发布

问题:

I'm trying to execute this script through JDBC (it's SQL Server):

DECLARE @var VARCHAR(10)
SET @var = "test"
INSERT INTO foo (name) VALUES (@var)

It's just an example, in my business case I have a big collection of SQL statements in one script.

I'm trying this:

final Statement stmt = connection.createStatement();
for (String sql : lines) {
  stmt.executeUpdate(sql);
}
stmt.close();

SQL Server is saying on the second line:

java.sql.SQLException: Must declare the scalar variable "@var".

Looks like I'm doing something wrong...

回答1:

You're executing it one line at a time, so of course the second line fails as it depends on the first line. Why not execute it all at once?...



标签: java sql jdbc