Eclipse連接SQLSERVER2000主要操作及可能遇到的問題

字號:

數(shù)據(jù)庫用的是sql server 2000,因?yàn)榍懊娑际窃趕ql server的企業(yè)管理器里面寫一些程序,也就不要用具體的程序設(shè)計語言來實(shí)現(xiàn)了。這段時間要搞數(shù)據(jù)庫課程設(shè)計,要用一門確切的語言來做出一個完整的項(xiàng)目,顯然就需要用一門程序設(shè)計語言來實(shí)現(xiàn)了。想來想去,還是用java好了,一來可能會相對簡化掉一些操作,二來又可以讓自己有機(jī)會好好鍛煉一下自己的 java水平。使用的IDE是Eclipse,在自己把數(shù)據(jù)庫設(shè)計做完之后,要做的第一件事就是將Eclipse跟sql server 2000連接起來。弄了一下晚上,終于把這個問題解決了。(采用JDBC的方法)
    首先需要下一個SQL Server 2000 driver for JDBC,用的是SQL Server 2000個人版,在其他地方弄了個sp4的補(bǔ)丁,但是安裝的時候提示要先裝那個什么Analysis,找來找去沒弄清楚狀況。然后考慮到找到的SQL Server 2000 driver for JDBC是sp3的,如果sql server 2000的補(bǔ)丁裝sp4可能會出什么問題,于是決定都用sp3的。SQL Server 2000的SP3的補(bǔ)丁在微軟的有下,鏈接地址如下:
    http://www.microsoft.com/downloads/details.aspx?FamilyId=90DCD52C-0488-4E46-AFBF-ACACE5369FA3&displaylang=zh-cn其中下載的地方有三個,開始的時候沒弄清楚,就隨便下了個,結(jié)果安裝的時候就出了問題,上網(wǎng)找了一下才弄清楚三個文件分別是對應(yīng)三個版本的。 chs_sql2kdesksp3.exe是服務(wù)器版,chs_sql2ksp3.exe是個人版, chs_sql2kasp3.exe是企業(yè)版。根據(jù)自己安裝的版本下載到合適的安裝就可以了。不過聽說對于某些windows xp sp2的系統(tǒng)也可以不裝補(bǔ)丁就用,不過我沒有成功過,jdbc裝了個sp2的都沒有成功,后面還是用的sp3才弄好。關(guān)于這些補(bǔ)丁的問題,判斷是否可以用重要一個條件就是在執(zhí)行程序的時候是否會出現(xiàn)這個提示:Error establishing socket 。如果出現(xiàn)這個錯誤通常就是SQL Server 2000的補(bǔ)丁沒打。
    然后就是把SQL Server 2000 driver for JDBC安裝后生成的三個jar文件加到classpath中,這三個分別是msbase.jar mssqlserver.jar msutil.jar 然后再要做的一件事就是要讓我們常用的IDE Eclipse知道這三個文件。方法如下:打開window菜單的perferences...子菜單,選擇java / build path / user librarise,點(diǎn)擊 NEW 隨便輸入名字(好跟jar包相同,好看點(diǎn),呵呵~~~)點(diǎn)擊 ADD JARS... 選擇這三個JAR文件中對應(yīng)的那個。然后就是把這些jar包加入新建的工程中,方法如下:右鍵單擊項(xiàng)目 選擇 perferences 選擇java build path 點(diǎn)擊ADD Library 選擇USER Library選擇剛才建的 Library OK就好了,也可以在新建項(xiàng)目的時候就選擇加入。好再把下面這個程序copy過去,執(zhí)行,顯示“Connection Successful!”。至此,在Eclipse中連接SQL Server 2000完成,安心地做其他的工作。
    測試程序:
    import java.sql.*;
    public class TestDB
    {
    public static void main(String[] args)
    {
    String driverName = "com.microsoft.jdbc.sqlserver.SQLServerDriver";
    String dbURL = "jdbc:microsoft:sqlserver://localhost:1433; DatabaseName=pubs";
    String userName = "sa";
    String userPwd = "";
    Connection dbConn = null;
    try
    {
    Class.forName(driverName);
    dbConn = DriverManager.getConnection(dbURL, userName, userPwd);
    System.out.println("Connection Successful!");
    }
    catch (Exception e)
    {
    e.printStackTrace();
    }
    }
    }