Cnfan.net中国网络
IT网络技术专家
微软技术
 最新专题: Windows Server 2003 安全指南   IIS 技术专题   Exchange 2007 技术专题   SharePoint 2007 教程   跟我从头学WSH   专题 | 分类 | 投稿 | 搜索
 微软技术首页 | 微软动态 | Vista | Windows | ISA | Exchange | Share Point | SQL Server | System Center | 其它

SQL Server 2000和JDBC的融合

  • 2008-01-14 16:47:24  作者:  来源:赛迪网  浏览次数:52  文字大小:【】【】【
简介:  SQL Server 2000 是当今网络编程中使用的比较多的一个数据库系统,而Java则是流行的网络编程语言,在网络编程中涉及的比较多也比较重要的就是数据库问题,Java自身提供了对各类主流数据库系统的支持,通过提 ...

关键字: SQL Server 2000 JDBC 融合


 driver is ok
  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则这个问题可以结决,我们再来看看升级之后,程序运行的结果: 

 driver is ok
  conection is ok
  Java.SQL.SQLException:
  [Microsoft][SQLServer 2000 Driver for JDBC]
  [SQLServer]
  对象名 'room' 无效。
  at com.microsoft.JDBC.base.
  BaseExceptions.createException
  (Unknown Source
  )
  at com.microsoft.JDBC.base.
  BaseExceptions.getException
  (Unknown Source)
  at com.microsoft.JDBC.SQLServer.
  tds.TDSRequest.processErrorToken
  (Unknown
  Source)
  at com.microsoft.JDBC.SQLServer.tds.
  TDSRequest.processReplyToken(Unknown
  Source)
  at com.microsoft.JDBC.SQLServer.tds.
  TDSExecuteRequest.processReplyToken
  (
  Unknown Source)
  at com.microsoft.JDBC.SQLServer.tds.
  TDSRequest.processReply(Unknown Sour
  ce)
  at com.microsoft.JDBC.SQLServer.
  SQLServerImplStatement.getNextResultType
  (Unknown Source)
  at com.microsoft.JDBC.base.
  BaseStatement.commonTransitionToState
  (Unknown
  Source)
  at com.microsoft.JDBC.base.
  BaseStatement.postImplExecu
  te(Unknown Source)
  at com.microsoft.JDBC.base.
  BaseStatement.commonExecute
  (Unknown Source)
  at com.microsoft.JDBC.base.
  BaseStatement.executeQueryInternal
  (Unknown So
  urce)
  at com.microsoft.JDBC.base.
  BaseStatement.executeQuery
  (Unknown Source)
  at DbTest.init(DbTest.Java:35)
  at DbTest.(DbTest.Java:25)
  at DbTest.main(DbTest.Java:46)
  Press any key to continue...

 在这儿,用户已经登陆上去,但是却不能访问里边的数据表,出现这个问题的原因在于sa用户为系统用户,它虽然能够登陆数据库,但是storeManager数据库里边却没有这个用户的访问权限,所以,我们现在为这个数据库重新建立一个用户

  share ,建立过程如下:在storeManager数据库中选重用户 ---〉新建用户 -- 〉名称选择(这一步中有两个关键点 1、身份验证选SQL身份验证,默认数据库选StoreManager)-〉建立新教色share ,此时更改程序,将用户登陆名和密码修改一下,重新运行程序: 

 driver is ok
  conection is ok
  1001
  1002

[1] [2] [3]

  <欢迎投稿>  <论坛讨论>
 »相关文章  »论坛新贴
精彩文章 活动资讯 今日头条