今天做一个特殊的业务处理,用JDBC连接SQLServer数据库载入驱动的时候,报例如以下错误:

java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC]Error establishing 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.<init>(Unknown Source)
at com.microsoft.jdbc.sqlserver.SQLServerImplConnection.open(Unknown Source)
at com.microsoft.jdbc.base.BaseConnection.getNewImplConnection(Unknown Source)
at com.microsoft.jdbc.base.BaseConnection.open(Unknown Source)
at com.microsoft.jdbc.base.BaseDriver.connect(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at app.specialSupervise.power.keywork.SendMessageDao.insert(SendMessageDao.java:68)
at app.specialSupervise.power.keywork.SendMessageCmd.insert(SendMessageCmd.java:15)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at com.icore.util.CoreDaoFactory.invoke(CoreDaoFactory.java:117)
at com.icore.util.CoreDaoFactory.invoke(CoreDaoFactory.java:135)
at com.icore.core.CommandPool.invoker(CommandPool.java:92)
at com.icore.core.CommandPool.handler(CommandPool.java:122)
at com.inspur.core.action.c.handler(c.java:213)
at com.icore.core.CoreAction.handler(CoreAction.java:234)
at com.icore.http.HttpServerHandler$RestHandler.doHandler(HttpServerHandler.java:267)
at com.icore.http.HttpServerHandler$RestHandler.handler(HttpServerHandler.java:254)
at com.icore.core.ThreadPoolBean.run(ThreadPoolBean.java:57)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)

一、配置错误

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

当中的sqlserver、server_name和port号都要看细致了。

二、1433port问题

能够通过命令“netstat -an”,来查看是否开了1433port,假设列表中没有,要增开port。

要保持jdbc配置语句( jdbc:microsoft:sqlserver://server_name:1433)中的port与数据库传输协议默认的port同样。

MSSQL设置port号过程例如以下:

1. 打开企业管理器。依次在控制台根文件夹 ->Microsoft SQL Servers->SQL Server 组,列出一部分数据库server。

2. 右击我们要连接的数据库server。选择属性。在常规选项卡点击网络配置弹出新窗体。

3. 在启用的协议区域我们选择 TCP/IP ,点击属性button。弹出新窗体。在这个窗体有网络协议默认值设置,一般默认port是:1433。 假设你在url中用的port号与这个不同,就会出现错误。

应保持二者同样。

三、没打补丁

能够用例如以下的方式查看MSSQL的版本号:

打开企业管理器-〉工具-〉SQL查询分析器-〉帮助-〉关于

查看MSSQL的具体版本

假设 是 8.00.194 就是还没打补丁

8.00.760 就是SP3

8.00.2039 就是SP4



1、下载MSSQL 2000 Service Pack 3a并安装,SQL请选用混和安装模式!!!

http://www.microsoft.com/downloads/details.aspx?FamilyId=90DCD52C-0488-4E46-AFBF-ACACE5369FA3&displaylang=zh-cn

解压缩sp3的升级包后,还要点击setup安装.才干成功升级到sp3。

2、下载SQL Server 2000 Driver for JDBC Service Pack 3

FamilyId=07287B11-0502-461A-B138-2AA54BFDC03A&displaylang=en" target="_blank">http://www.microsoft.com/downloads/details.aspx?

FamilyId=07287B11-0502-461A-B138-2AA54BFDC03A&displaylang=en

四、系统防火墙或者杀毒软件

假设系统开防火墙或者杀毒软件,在有些情况下也能够出现类似的问题。

没有遇见过,有人这么说。

五、数据驱动版本号或者写法不正确应

假设port对上之后,还连不上的话,请检查数据驱动的版本号(sql2005,sql2000驱动写法有些细微差异)

纯JAVA驱动:

// 2005 版本号:

驱动:Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");

连接:”jdbc:sqlserver:// localhost:1433;databaseName=pubs”,”sa”,”sa”

// 2000 版本号:

驱动:Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");

连接:“jdbc:microsoft:sqlserver:// localhost:1433;databaseName=pubs”,”sa”,”sa”

JDBC-ODBC桥接:

驱动:Class.forName(“sun.jdbc.odbc.JdbcOdbcDriver”);

连接:jdbc:odbc:test

[Microsoft][SQLServer 2000 Driver for JDBC]Error establishing socket错误解决方法总结的更多相关文章

  1. java操作数据库出现(][SQLServer 2000 Driver for JDBC]Error establishing socket.)的问题所在即解决办法

    在进行jdbc直接操作数据库时    : 我们需要对该工程进行一次导包(引入"msbase.jar" "mssqlserver.jar" "msuti ...

  2. SQLServer 2000 Driver for JDBC][SQLServer]传入的表格格式数据流(TDS)远程过程调用(RPC)协议流不正确解决方法

    问题:[SQLServer 2000 Driver for JDBC][SQLServer]传入的表格格式数据流(TDS)远程过程调用(RPC)协议流不正确.参数 1 (""): ...

  3. Dreamweaver无法启动:xml parsing fatal error..Designer.xml错误解决方法

    xml parsing fatal error:Invalid document structure,line:1,file:C:\Documents and Settings\Administrat ...

  4. 登录MySQL提示ERROR 1045 (28000)错误解决方法

    今天,登录服务器准备修改数据库的一些东西.但输入密码,却进不了数据库并提示一个错误,如下图 再确认密码没错的情况下,还是进不了数据库.便在网上找到了解决方法,记录下来,供参考学习. 解决方法: 总体思 ...

  5. Error establishing socket解决办法

    jdbc配置语句为: jdbc:microsoft:sqlserver://server_name:1433 如运行程序时出现 "Error establishing socket" ...

  6. vss error reading from file 解决方法

    vss error reading from file 解决方法 1 若服务器中存在 vss/data/backup目录,请将该目录删掉2 运行cmd cd.. cd C:\Program Files ...

  7. win7 、2008 提示Error 1606 Could Not Access Network Location %SystemDrive%/inetpub/wwwroot/ 的错误解决方法

    在安装控件过程中出现提示Error 1606 Could Not Access Network Location %SystemDrive%/inetpub/wwwroot/ 的错误解决方法 1. 点 ...

  8. Eclipse 出现Some sites could not be found. See the error log for more detail.错误 解决方法

    Eclipse 出现Some sites could not be found.  See the error log for more detail.错误 解决方法 Some sites could ...

  9. vmware tools安装程序无法继续,Microsoft Runtime DLL安装程序未能完成安装。的解决方法

    vmware tools安装程序无法继续,Microsoft Runtime DLL安装程序未能完成安装.的解决方法_华英雄_新浪博客 http://blog.sina.com.cn/s/blog_5 ...

随机推荐

  1. 2.shell变量

    shell的变量的介绍 shell的变量分为系统变量和用户自定义变量系统变量:$HOME, $PWD, $SHELL, $USER等等,这些变量系统已经定义好了,我们可以直接拿来用用户自定义变量:我们 ...

  2. python中的yield生成器详解

    #原创,转载请先联系 在学习生成器之前,必须先了解一下迭代器.因为生成器就是一种特殊的迭代器,而且生成器用起来更加优雅. 迭代器的详解可以参考我的另一篇博文:https://www.cnblogs.c ...

  3. 《Java编程思想》笔记 第八章 多态

    1.向上转型 把子类引用当作父类引用.(子类对象赋值给父类引用) 2.绑定 确定方法属于哪个类. 3.前期绑定 程序执行前绑定. 4.后期绑定也叫动态绑定 程序运行时绑定. 5.多态 多个不同的对象对 ...

  4. IIS7.0添加IP地址和域名限制

    IIS7.0默认安装是没有“IP地址和域名限制”功能的,需要我们自己选择安装 1.windows系统的添加方式 控制面板--程序与功能--启用或关闭windows功能--internat inform ...

  5. HDU 6319.Problem A. Ascending Rating-经典滑窗问题求最大值以及COUNT-单调队列 (2018 Multi-University Training Contest 3 1001)

    2018 Multi-University Training Contest 3 6319.Problem A. Ascending Rating 题意就是给你长度为k的数列,如果数列长度k<n ...

  6. 10、Flask实战第10天:视图使用装饰器

    在实际开发中,我们有时候会用到自己定义装饰器并应用到函数视图或者类视图里面:比如:我们要想进入个人中心页面,首先要验证你是否登录,否则进不去,下面我们来模拟这个场景 定义一个装饰器 from func ...

  7. 7、Django实战第7天:用form实现登录

    Django提供了form对表单进行验证,比如今天要完成的限定登录的时候用户名和密码不能为空,通过这个操作,数据进入到数据库查询之前,我们就可以过滤很多错误,避免不必要的查询. 在users目录下新建 ...

  8. date conversion

    SELECT to_char(sysdate,'yyyymmdd hh:mi:ss'), to_char(sysdate ,'yyyymmdd hh:mi:ss'), to_char(sysdate ...

  9. luogu P3368 【模板】树状数组 2

    题目描述 如题,已知一个数列,你需要进行下面两种操作: 1.将某区间每一个数数加上x 2.求出某一个数的和 输入输出格式 输入格式: 第一行包含两个整数N.M,分别表示该数列数字的个数和操作的总个数. ...

  10. [Atcoder Regular Contest 064] Tutorial

    Link: ARC064 传送门 C: 贪心+对边界的特殊处理 #include <bits/stdc++.h> using namespace std; typedef long lon ...