java 通过jdbc连接sql server数据库的常见问题

??

微软sqlserver2000驱动下载地址下载后放到web-inf/lib目录 下载的地址是:http://download.microsoft.com/download/3/0/f/30ff65d3-a84b-4b8a-a570-27366b2271d8/setup.exe

一:在通过jdbc连接SQL Server经常回出现[Microsoft][SQLServer 2000 Driver for JDBC]Error establishing socket, 原因如下: 1,通过url连接的时候指定的服务器名称或者服务器地址不正确,这一点你可以通过ping来验证。 2,指定的服务器上的sql server的服务没有启动,你可以通过sql server的查询工具来验证这个问题。 3,指定端口错误,sql server的默认端口是1433。 4,sql server没有提供tcp/ip的服务,你可以通过sql server的管理工具来查看这个问题。

5,如果你的系统是 windows XP 或者 Windows 2003,那么你的sql server一定要升级到sp3以上.

解决了如上问题一般就不会出现连接问题了。

jdbc配置语句为: jdbc:microsoft:sqlserver://server_name:1433

二:如运行程序时出现 “Error establishing socket” 错误,则应进行如下调试:

1 检查SQL SERVER 是否允许远程访问.具体步骤:

1)打开”企业管理器”,打开控制台根目录>SQL Server 组>数据库 2)在相应”数据库”上单击右键,选择”属性” 3)选择”连接”选项卡,检查”远程服务器连接”下,RPC服务是否选择.

2 使用telnet IP地址 1433,系统是否提示连接出错,如系统提示出错 检查是否防火墙屏蔽了SQL SERVER 或 java IDE 的网络访问端口 如果是,关闭防火墙,重新启动SQL SERVER和java IDE,进行测试, 如果系统仍提示上述错误,尝试下列步骤

3 检查SQL SERVER 端口号及是否启用了TCP/IP协议,具体步骤:

1)打开”企业管理器”,打开控制台根目录>SQL Server 组>数据库 2)在相应”数据库”上单击右键,选择”属性” 3)选择”常规”选项卡,点击”网络配置”,如启用的协议中无”TCP/IP协议”将其加入 4)选择”TCP/IP协议”,点击”属性”,检查其端口号是否为1433 5)如端口号为1433将其修改为其它端口号,修改jdbc连接语句,将端口号同样改为新启用的端口号,如jdbc:microsoft:sqlserver://server_name:1400(假设新端口号为 1400) ? 以上都注意了?? 不知为什么一会连上了? ,重起机子就又连不上了 那就是驱动的问题了 你可以去www.jtds.com去下载jtds驱动,如果是tacmat同样把它放在web-inf/lib目录下 如果是sun appserver就需要放在/Sun/AppServer/jdk/jre/lib/ext下面即可

三:系统是 window2003 + sqlserver2000 + sun Appserver ?? 连接数据库用的是ms提供的jdbc驱动。不过,出现了一个很郁闷的问题,当向数据库插入有点长的字符串时,就报错了。 ?? 返回错误是:Caused by: java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC]The DBMS returned an unspecified??? error. ?? 这时你可以换上jtds一试。呵呵,问题马上就解决了。 ?? jtds确实是比较好的第三方mssqlserver的jdbc驱动。 ?? 如果jtds连接不了sqlserver ,请把你的sqlserver版本升级到sp3或更高的版本. ?? JTDS下载地址:http://sourceforge.net/project/showfiles.php?group_id=33291 ?? driver = net.sourceforge.jtds.jdbc.Driver ?? url = jdbc:jtds:sqlserver://localhost:1433/databasename;user=sa;password=userpassword

那些无法讲述的悲伤和苍凉,

java 通过jdbc连接sql server数据库的常见问题

相关文章:

你感兴趣的文章:

标签云: