數據庫連接 和 動態查詢

package executeQueryDemo1;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;



public class queryDemo {

protected static String dbClassName = "com.microsoft.sqlserver.jdbc.SQLServerDriver";
	
	
	static final String dbUrl = "jdbc:sqlserver://localhost:1433;databaseName=StudentManager";

	protected static String dbUser = "sa";
	protected static String dbPwd = "123";
	protected static String second = null;
	private static Connection conn = null;
	
	 public queryDemo() {
		try {
			if (conn == null) {
				Class.forName(dbClassName).newInstance();
				conn = DriverManager.getConnection(dbUrl, dbUser, dbPwd);
				
				String sql= "select * from stu where Sname like ?"; // 通配符“?”   
				PreparedStatement pStatement =  conn.prepareStatement(sql);
				
				pStatement.setString(1, "邢%");  // 參數序號     參數值
			   
				
				ResultSet rSet = pStatement.executeQuery();
				System.out.println("學號"+"\t"+"姓名"+"\t"+"性別"+"\t"+"年齡"+"\t"+"籍貫"+"\t"+"系部");
				while(rSet.next()) {
					System.out.println(rSet.getString(1)+"\t"+rSet.getString(2)+"\t"+rSet.getString(3)+"\t"+rSet.getInt(4)+"\t"+rSet.getString(5)+"\t"+rSet.getString(6));
				}
			}
			else 
				return;
		} catch (Exception ee) {
			ee.printStackTrace();
		}

	}
	private static ResultSet executeQuery(String sql) {
		try {
			if(conn==null)
			new queryDemo();
			return conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE).executeQuery(sql);
		} catch (SQLException e) {
			e.printStackTrace();
			return null;
		} finally {
		}
	}
	private static int executeUpdate(String sql) {
		
		try {
			if(conn==null)
				new queryDemo();
			return conn.createStatement().executeUpdate(sql);
		} catch (SQLException e) {
			System.out.println(e.getMessage());
			//if(e.getMessage().equals("[Microsoft][SQLServer 2000 Driver for JDBC][SQLServer]DELETE 語句與 COLUMN REFERENCE 約束 'FK_TB_BORRO_REFERENCE_TB_BOOKI' 衝突。該衝突發生於數據庫 'db_library',表 'tb_borrow', column 'bookISBN'。"))
				
			return -1;
		} finally {
		}
	}
	
	public static void close() {
		try {
			conn.close();
		} catch (SQLException e) {
			e.printStackTrace();
		}finally{
			conn = null;
		}
	}
	
	public static void main(String[] args) {
		new queryDemo();
	}
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章