通过jdbc链接sql server2008

    技术2022-07-10  97

    最近在学jdbc,在网上看的视频是用的mysql数据库,在进行链接的时候一直出现找不到端口1433的错误,本来以为可能是因为数据库方面端口设置错误,但反复确认了端口是没有问题的,后来用telnet端口也是ok的,后来才发现用jdbc链接sql server2008基本和mysql一样,不过在一些细节方面有区别。

    错误的代码

    public class ConnectionTest1 { @Test public void testConnection1() throws SQLException{ Driver driver = new com.microsoft.sqlserver.jdbc.SQLServerDriver(); String url = "jdbc:sqlserver://localhost:1433/scott";//错误就在这一行 Properties info = new Properties(); info.setProperty("username", "sa"); info.setProperty("password", "305825389"); Connection con = driver.connect(url, info); System.out.println(con); }

    开始的时候我一直以为是端口号出现错误了,后来也是打开了服务器配置进行配置,并用Telnet 127.0.0.1 1433 命令试过,有结果表明本机有这个端口。

    后来我翻书的时候,发现sql server 2008 的在填写url信息的时候,ip地址和数据库名中间是用“;”分开的,我就试了一试,果然一次搞定。修改后的代码如下

    正确代码

    public class ConnectionTest1 { @Test public void testConnection1() throws SQLException{ Driver driver = new com.microsoft.sqlserver.jdbc.SQLServerDriver(); String url = "jdbc:sqlserver://localhost:1433; databasename = scott";//ip地址输完后,单独输出数据库名字,databasename 只是一个代号,不一定更要用这个,大小写也没有锁定 Properties info = new Properties(); info.setProperty("username", "sa");//username不区分大小写,也可以用user info.setProperty("password", "305825389");//不区分大小写 Connection con = driver.connect(url, info); System.out.println(con); }
    Processed: 0.016, SQL: 9