java語(yǔ)言中,通過(guò)jdbc訪(fǎng)問(wèn)sqlserver2005(2008)數據庫默認實(shí)例可以按常用的寫(xiě)法來(lái)寫(xiě)url連接。代碼如下:
- <span style="font-size:12px;">Connection cn = DriverManager.getConnection("jdbc:sqlserver://localhost:1433; DatabaseName=demo", "sa","sa");</span>
其中localhost為sqlserver2005數據庫ip,Demo為數據庫名。
自命名的sqlserver數據庫實(shí)例(實(shí)例名:SQL2008R2)的數據庫又是如何訪(fǎng)問(wèn)?經(jīng)過(guò)查資料和摸索發(fā)現url寫(xiě)法如下:
- <span style="font-size:12px;">con = DriverManager.getConnection("jdbc:sqlserver://localhost;instanceName=SQL2008R2; DatabaseName=Demo", "sa","sa");</span>
也可以這樣寫(xiě):
- <span style="font-size:12px;">Connection cn = DriverManager.getConnection("jdbc:sqlserver://localhost//SQL2005; DatabaseName=Demo", "sa","sa");</span>
注意,連接數據庫自命名實(shí)例的url中沒(méi)有端口號1433,這是SQLServer中的管理機制決定的。
1. 如果機器上安裝的是SQLServer的默認實(shí)例(MSSQL),那么就是通過(guò)TCP 默認1433端口遠程連接。如果你打開(kāi)了防火墻,需要放開(kāi)1433端口。
2. 如果機器上有多個(gè)數據庫實(shí)例,例如 SQLServer2005, SQLServer2008, SQLServer2008R2等,而你的SQLServer2008R2安裝在Named instance,例如localhost\MyInstance。這樣連接默認是UDP 1434端口(可以自己指定,在第三點(diǎn)的第二個(gè)選項卡IP address里面IPALL里面輸入SQL運行的端口),并且需要打開(kāi)SQL Browser service服務(wù)。在服務(wù) - SQL Browser service,設置為自動(dòng)啟動(dòng)。如果你打開(kāi)了防火墻,需要放開(kāi)UDP 1434端口。