1. 程式人生 > >Java與本地sql server資料庫的配置與連線以及使用案例

Java與本地sql server資料庫的配置與連線以及使用案例

首先分享一下sql server2012標準版64位下載地址,其安裝過程我不在這裡詳細介紹了,可以在各大網站搜尋

連結:http://pan.baidu.com/s/1eR6HOY2 密碼:6qfa

安裝完sql server後,可能感覺電腦有點卡,這是因為sql server隨時都在啟動中,可以調節其服務。開啟計算機管理,找到服務和應用程式下的服務,找到sql server(MSSQLSERVER),若是精簡版的會是sql server(SQLEXPRESS)。右擊屬性選擇手動,確定。再點選左上角的停止,即可停止服務。若是需要服務時,再來這裡點選啟動即可。為了後來的方便,現在這裡保持啟動狀態。

然後在sql sever 中找到並開啟sql server配置管理器,在sql server網路配置中找到MSSQLSERVER(依據所裝軟體的不同,這裡的名字也不一樣)。然後TCP/IP設為啟動狀態。然後雙擊,開啟IP地址,在最下面的IPALL中的TCP埠改為1433(或其它數字,並記住),並把上面的其中一個IP地址的已啟用的狀態改為是,點選確定。

這些設定完成後,開啟sql server,用windows驗證登入。進入後右擊資料庫,建立資料庫,我在這裡建立一個STUDB的資料庫。建立後右擊表,點選新建表,建立一個stuinfo的表,設立如下資訊,id設為自增(點選id,在下面的標示規範中選擇是即可)。


然後右擊安全性目錄下的使用者名稱(!不是STUDB目錄下的安全性目錄),點選新建登入名,選擇SQL server驗證登入,輸入登入名及密碼(我在這裡設為test,123),去掉強制實施密碼策略,預設資料庫設為STUDB,點選左上角的使用者對映,上面的表中選擇STUDB,下面再點選db_owner。再點選確定即可。

退出該連線後,使用sql Server登入,輸入使用者名稱及密碼。進入後,就可以就可以看到剛剛新建的表了。

接下來就是操作eclipse,新建一個test執行類。下來是就是新增jdbc了。

連結:http://pan.baidu.com/s/1hsLNyWs 密碼:aj1l

這兩個版本可以供讀者使用。右擊JRE System Library,選擇bulid path/configure bulid path,點選add external jars..,選擇任何一個版本的jdbc,點選確定。

現在所有的配置和連線都已完成了,接下來就是寫程式碼了。

第一步載入驅動

try
		{
			Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
		}
		catch(ClassNotFoundException ex)
		{
			System.out.println(ex);
		}
第二步建立連線
conn=DriverManager.getConnection("jdbc:sqlserver://localhost:1433;DataBasename=myschool","test","123");

左右兩個字串是使用者名稱和密碼。

第三步資料操作
String name="tom";
			String pwd="123";
			String stuclass="一年一班";
			int age=20;
			String gender="男";
			StringBuffer  sql=new StringBuffer("insert into stuinfo(stuname,stupwd,stuclass,stuage,stugender)values('");
			sql.append(name+"','");
			sql.append(pwd+"','");
			sql.append(stuclass+"',");
			sql.append(age+",'");
			sql.append(gender+"')");		
			stmt=conn.createStatement();
			//StringBuffer sql=new StringBuffer("delete from stuinfo where id=1");
			//stmt==conn.createStatement();
			/*rs=stmt.executeQuery("select * from stuinfo");
			System.out.println("編號\t姓名\t密碼\t班級\t年齡\t性別");
			while(rs.next()){
				System.out.print(rs.getInt(1)+"\t");
				System.out.print(rs.getString(2)+"\t");
				System.out.print(rs.getString(3)+"\t");
				System.out.print(rs.getString(4)+"\t");
				System.out.print(rs.getInt(5)+"\t");
				System.out.println(rs.getString(6)+"\t");
			}*/
			stmt.execute(sql.toString());
註釋了的是資料查詢操作。sql語句的操作可以到其它網站找,可以直線更多功能。這一切需要有一個SQLException的異常。

之後就是把開啟的關閉掉。

try{
				if(rs!=null){
					rs.close();
				}
				if(stmt!=null){
					stmt.close();
				}
			if(conn!=null){
				conn.close();				
			}
			}catch(SQLException e){
				e.printStackTrace();
			}
之後就可以運行了。

最後把整個程式碼貢獻出來,供大家學習。

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class Test {

	public static void main(String[] args){
		// TODO Auto-generated method stub
		Connection conn=null;//step1載入驅動
		Statement stmt=null;
		ResultSet rs=null;
		try{
		Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
		System.out.println("載入成功");
		}
		catch(ClassNotFoundException e){
			e.printStackTrace();
		}
		//step2 建立連線
		try{
			conn=DriverManager.getConnection("jdbc:sqlserver://localhost:1433;DatabaseName=studb","leige","leige123");
			System.out.println("連線成功");
			String name="tom";
			String pwd="123";
			String stuclass="一年一班";
			int age=20;
			String gender="男";
			StringBuffer  sql=new StringBuffer("insert into stuinfo(stuname,stupwd,stuclass,stuage,stugender)values('");
			sql.append(name+"','");
			sql.append(pwd+"','");
			sql.append(stuclass+"',");
			sql.append(age+",'");
			sql.append(gender+"')");		
			stmt=conn.createStatement();
			//StringBuffer sql=new StringBuffer("delete from stuinfo where id=1");
			//stmt==conn.createStatement();
			/*rs=stmt.executeQuery("select * from stuinfo");
			System.out.println("編號\t姓名\t密碼\t班級\t年齡\t性別");
			while(rs.next()){
				System.out.print(rs.getInt(1)+"\t");
				System.out.print(rs.getString(2)+"\t");
				System.out.print(rs.getString(3)+"\t");
				System.out.print(rs.getString(4)+"\t");
				System.out.print(rs.getInt(5)+"\t");
				System.out.println(rs.getString(6)+"\t");
			}*/
			stmt.execute(sql.toString());
			System.out.println("插入資料成功");
		}catch(SQLException e){
			e.printStackTrace();
		}
		finally{
			try{
				if(rs!=null){
					rs.close();
				}
				if(stmt!=null){
					stmt.close();
				}
			if(conn!=null){
				conn.close();				
			}
			}catch(SQLException e){
				e.printStackTrace();
			}
		}

	}

}

過程中若有問題或不足之處,歡迎想我提出。