设为首页 收藏本站
查看: 498|回复: 0

[经验分享] 浅谈如何用JDBC连接SQL Server 2000

[复制链接]
发表于 2016-11-3 09:10:41 | 显示全部楼层 |阅读模式
本文将简单谈谈如何让SQL Server 2000用JDBC来连接,这也是我们经常使用Java中JDBC驱动的一种方式,希望对大家有所帮助。
用JDBC连接SQL Server 2000问题总结:

1、安装SQL Server2 000

安装SQL Server 2000补丁SP3

安装SQL Server 2000 for SP3的驱动程序

(先打补丁sp3,再安装针对sp3的驱动程序,安装补丁时,为保险起见,两种验证方式的都装一遍,我是先装windows验证,再装SQL Server验证的)

打开JBuilder

2、tools_configure_libraries  new一个sqlserver,在library paths中加入驱动程序安装目录下lib文件夹中的三个jar文件

3、project——default projectproperties在paths页下的required libaraes页中加入第1步new的sqlserver

4、tools——enterprise setup(jb9)

enterprise——enterprise setup(jb2005)

在弹出的对话框的database driver页中,添加第1步new的sqlserver,确定

5、重启jbuilder

6、tools——database pilot

在弹出的窗口的菜单中选view——option

在弹出的对话框中选driver页面,点add

在driver class文本框中输入com.microsoft.jdbc.sqlserver.SQLServerDriver,确定

7、设置名为com.microsoft.jdbc.sqlserver.SQLServerDriver的driver class

Driver是com.microsoft.jdbc.sqlserver.SQLServerDriver

URL是jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=数据库名(如:cardSystem)

用JDBC连接SQL Server 2000常见问题分析-1:

java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC]Error establis  hing socket.          at com.microsoft.jdbc.base.BaseExceptions.createException(Unknown Source  )          at com.microsoft.jdbc.base.BaseExceptions.getException(Unknown Source)          at com.microsoft.jdbc.base.BaseExceptions.getException(Unknown Source)          at com.microsoft.jdbc.sqlserver.tds.TDSConnection.(Unknown Source)           at com.microsoft.jdbc.sqlserver.SQLServerImplConnection.open(Unknown Sou  rce)          at com.microsoft.jdbc.base.BaseConnection.getNewImplConnection(Unknown S  ource)          at com.microsoft.jdbc.base.BaseConnection.open(Unknown Source)          at com.microsoft.jdbc.base.BaseDriver.connect(Unknown Source)          at java.sql.DriverManager.getConnection(DriverManager.java:523)          at java.sql.DriverManager.getConnection(DriverManager.java:171)          at DbTest.init(DbTest.java:32)          at DbTest.(DbTest.java:25)          at DbTest.main(DbTest.java:46)  Press any key to continue... 出现上边错误的主要原因是默认的数据库服务器端口 1433没有打开,无法直接连接,如果成功升级到sp3则这个问题可以结决。还有就是数据库一定要用Windows和数据库混合身分验证方式。


用JDBC连接SQL Server 2000常见问题分析-2:

在安装安装SQLServer2000 for SP3的驱动程序时,弹出对话框提示:"以前的某个程序安装已在安装计算机上创建挂起的文件操作"

原因:以前装过sql server,后来删掉。现在重装,却出现“以前的某个程序安装已在安装计算机上创建挂起的文件操作。运行安装程序之前必须重新启动计算机”的错误。无法进行下去。

解决步骤是:

1)添加/删除程序中彻底删除sql server。

2)将没有删除的sql server目录也删除掉。

3)打开注册表编辑器,在HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session  Manager中找到PendingFileRenameOperations项目,并删除它。这样就可以清除安装暂挂项目。

4)删除注册表中跟sql server相关的键。

其实估计只要做第3步就可以搞定,这样就可以清除安装暂挂项目。自己是先走了1,2,4,最后  做了3才搞定。所以估计3才是最关键的。

采用sql server driver 来实现对sqlserver数据库的操作时,一般代码如下:


Connection con = null;  PrepareStatement pstmt = null;  try{      Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");      con = DriverManager.getConnection("jdbc:microsoft:sqlserver//localhost:1433;databasename=pubs","sa","sa");      pstmt = con.preparedStatment("insert ....");      //......  }catch(ClassNotFoundException e){      e.printStackTrace();  }catch(SQLException e){      e.printStackTrace();  }finally{      try{            if (pstmt != null) pstmt.close();            if (con != null) con.close();      }catch(Exception e){            e.printStackTrace();      }  } 如果是SQLSERVER2005,则改成:

    Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");      con = DriverManager.getConnection("jdbc:sqlserver//localhost:1433;databasename=pubs","sa","sa");      > java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC]Error establishing socket.
估计是你连接sql server的端口设置有问题,你可以查看一下端口,看看是不是1433。

解决:出现[Microsoft][SQLServer 2000 Driver for JDBC]Error establishing socket

凡是出现这种错误的,都可以说不是程序本身的错误,一般人都会写jdbc:microsoft:sqlserver://localhost:1433;这样写是对的,很多是由于端口的问题,请查看一下端口,如下:

1)打开"企业管理器",打开控制台根目录>SQL Server 组>数据库

2)在相应"数据库"上单击右键,选择"属性"

3)选择"常规"选项卡,点击"网络配置",如启用的协议中无"TCP/IP协议"将其加入

4)选择"TCP/IP协议",点击"属性",检查其端口号是否为1433

5)如端口号为1433将其修改为其它端口号,修改jdbc连接语句,将端口号同样改为新启用的端口号,如jdbc:microsoft:sqlserver://server_name:1400(假设新端口号为 1400)

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-294954-1-1.html 上篇帖子: 如何连接SQL Server数据库(Java版)【转】 下篇帖子: 深入探讨SQL Server 2000对XML的支持
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表