mfc42d
发贴: 116
积分: 30
|
于 2004-01-08 09:43
This error occurs when you try to execute multiple statements against a SQL Server database with the JDBC driver while in manual transaction mode (AutoCommit=false) and while using the direct (SelectMethod=direct) mode. Direct mode is the default mode for the driver."
import java.sql.*; import java.io.*;
public class Repro{
public static void main(String args[]) { try { Connection con; Statement s1 = null; ResultSet r1 = null; Statement s2 = null; ResultSet r2 = null; Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver"); con = DriverManager.getConnection( "jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=pubs;SelectMethod=Direct;User=User;Password=Password"); //fix 1 //"jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=pubs;SelectMethod=Cursor;User=User;Password=Password"); con.setAutoCommit(false); try { s1 = con.createStatement(); r1 = s1.executeQuery("SELECT * FROM authors"); //fix 2 //r1.close(); //s1.close();
s2 = con.createStatement(); r2 = s2.executeQuery("SELECT * FROM publishers"); } catch (SQLException ex) { System.out.println(ex); } } catch (Exception e) { e.printStackTrace(); } } }
|