利用jdbc連接sqlserver2008(打開用戶,配置遠程登錄)

1.       安裝sqlserver2008

2.       默認情況下是windows身份登錄,sa用戶被禁止。

3.       通過windows身份登錄到數據庫,在“安全性”下,右鍵點擊“新建登錄名”,選擇以sql 身份登錄。

 

 

4.       右鍵點擊服務器,選擇“屬性”,選擇“安全性”,然後選中sql server和windows身份驗證模式。

5.       配置遠程登錄,2008採用的是動態端口分配,打開配置管理器,修改服務端和客戶端的端口爲1433

6.       下載jdbc驅動,到microsoft官網下載sqljdbc2.0驅動——Microsoft SQL Server JDBC Driver 2.0.exe,很小大概就4M,解壓后里面有2個Jar包,sqljdbc4.jar和sqljdbc.jar,這兩個都一樣,只是針對你的JDK的版本的不同(我的jdk是1.6.21,導入sqljdbc4報了一個異常,然而換了一個以前的包就好了,當出現這個Disabling contextual LOB creation as createClob() method threw error : java.lang.reflect.InvocationTargetException異常時,就是說包導錯了,換包試試。)

7.       配置hibernate.properties文件(直接用jdbc也行)

## MS SQL Server

 

hibernate.dialect org.hibernate.dialect.SQLServerDialect

hibernate.connection.driver_class com.microsoft.sqlserver.jdbc.SQLServerDriver

hibernate.connection.url jdbc:sqlserver://172.7.22.24:1433;DatabaseName=webclient

hibernate.connection.username root

hibernate.connection.password centre

 

我採用的是c3p0數據源,測試獲得sessionfactory正常。

8.直接通過jdbc訪問的例子,網上找的,應該是對的。

import java.sql.*;
public class javaConSQL
{
 public static void main(String[] args) 
 {
  String JDriver="com.microsoft.sqlserver.jdbc.SQLServerDriver";//SQL數據庫引擎
  String connectDB=;//數據源
  "jdbc:sqlserver://127.0.0.1:1433;DatabaseName=Mydb"
  try
  {
   Class.forName(JDriver);//加載數據庫引擎,返回給定字符串名的類
  }catch(ClassNotFoundException e)
  {
   //e.printStackTrace();
   System.out.println("加載數據庫引擎失敗");
   System.exit(0);
  }     
  System.out.println("數據庫驅動成功");
  
  try
  {
   String user="sa";
   String password="sql2008";
   Connection con=DriverManager.getConnection(connectDB,user,password);//連接數據庫對象
   System.out.println("連接數據庫成功");
   Statement stmt=con.createStatement();//創建SQL命令對象
   
   //創建表
   System.out.println("開始創建表");
   String query="create table TABLE1(ID NCHAR(2),NAME NCHAR(10))";//創建表SQL語句
   stmt.executeUpdate(query);//執行SQL命令對象
   System.out.println("表創建成功");
      
   //輸入數據
   System.out.println("開始插入數據");
   String a1="INSERT INTO TABLE1 VALUES('1','旭哥')";//插入數據SQL語句
   String a2="INSERT INTO TABLE1 VALUES('2','偉哥')";
   String a3="INSERT INTO TABLE1 VALUES('3','張哥')";
   stmt.executeUpdate(a1);//執行SQL命令對象
   stmt.executeUpdate(a2);   
   stmt.executeUpdate(a3);
   System.out.println("插入數據成功");
   
   //讀取數據
   System.out.println("開始讀取數據");
   ResultSet rs=stmt.executeQuery("SELECT * FROM TABLE1");//返回SQL語句查詢結果集(集合)
   //循環輸出每一條記錄
   while(rs.next())
   {
    //輸出每個字段
    System.out.println(rs.getString("ID")+"\t"+rs.getString("NAME"));
   }
   System.out.println("讀取完畢");
   
   //關閉連接
   stmt.close();//關閉命令對象連接
   con.close();//關閉數據庫連接
  }
  catch(SQLException e)
  {
   e.printStackTrace();
   //System.out.println("數據庫連接錯誤");
   System.exit(0);
  }
 }
}
9.請關閉防火牆。

 

發佈了153 篇原創文章 · 獲贊 25 · 訪問量 94萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章