JDBC编程:连接SQL Server详细示例
时间:2022-03-14 03:34
1 package org.warnier.zhang.jdbc; 2 3 import java.sql.Connection; 4 import java.sql.DriverManager; 5 import java.sql.ResultSet; 6 import java.sql.ResultSetMetaData; 7 import java.sql.SQLException; 8 import java.sql.Statement; 9 10 public class SQLServerTest { 11 12 /** 13 * @param args 14 * @throws ClassNotFoundException 15 * @throws SQLException 16 */ 17 public static void main(String[] args) throws ClassNotFoundException, 18 SQLException { 19 // 加载驱动程序;(虚拟机加载类,而非在编程的过程中要使用这个类。) 20 Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); 21 22 // 建立数据库连接; 23 Connection connection = DriverManager.getConnection("jdbc:sqlserver://localhost:1433;databaseName=test;user=sa;password=*ying1993AD"); 24 25 // 创建SQL语句,执行语句,返回结果集; 26 Statement statement = connection.createStatement(); 27 ResultSet resultSet = statement.executeQuery("SELECT * FROM [user];"); 28 //注:SELECT * FROM user错误原因: 29 //报错语句:关键字‘user’附近存在语法错误; 30 //user 是SQL语句中的关键字,如果要用user作为表名,必须用方括号[]将user括起来,即[user]; 31 32 // 处理结果集(包括元数据); 33 // 打印属性名; 34 ResultSetMetaData rsMetaData = resultSet.getMetaData(); 35 for (int i = 1; i <= rsMetaData.getColumnCount(); i++) { 36 System.out.printf("%-8s\t", rsMetaData.getColumnName(i)); 37 } 38 System.out.println(); 39 40 // 打印属性值; 41 while (resultSet.next()) { 42 for (int i = 1; i <= rsMetaData.getColumnCount(); i++) { 43 System.out.printf("%-12s\t", resultSet.getString(i)); 44 } 45 System.out.println(); 46 } 47 48 // 关闭数据库连接;(连接数据库在Java应用程序中是笔很大的开销。) 49 connection.close(); 50 } 51 52 }