it_man的专栏

释放你的能量

buffon maikoID:it_man
76944次访问,排名1258好友3人,关注者4
..........
it_man的文章
原创 55 篇
翻译 2 篇
转载 94 篇
评论 30 篇
it_man的公告
I love it_man 欢迎大家和我互相交流. email与我联系.
最近评论
sap99:http://www.sap99.com/
,SAP免费资料下载
SAP99资料多多

http://www.sap99.com

有很多的学习资料,推荐一下,
it_man:没有,要自己关闭
it_man:lou shang de :
protected 向子类以及同一个包中的类放开
jazz:very good!
nenty:谢谢!
文章分类
收藏
    相册
    花心的相册
    便民服务
    IP地址、手机号码、身份证查询
    万年历查询
    中日英在线翻译 (RSS)
    在线翻译(中日英)
    天气预报
    火车时刻表查询
    航班时刻查询系统
    酒店信息查询
    管理知识网站
    世界经理人网站
    免费资源
    1G网络硬盘(还有大量免费视频)
    其他
    最好的股票BBS
    我的圈子(群)
    IT圈里圈外(圈子)
    IT圈里圈外(群组)(RSS)
    娱乐频道
    天涯社区BBS
    拂晓雅阁(超人气BBS)
    资源中心
    AJax技术论坛
    IBM中国
    中国it实验室
    中国教育学习网
    教育人生网
    沪江网( 最牛的语言学习网)
    存档
    软件项目交易
    订阅我的博客
    XML聚合  FeedSky
    订阅到鲜果
    订阅到Google
    订阅到抓虾
    订阅到BlogLines
    订阅到Yahoo
    订阅到GouGou
    订阅到飞鸽
    订阅到Rojo
    订阅到newsgator
    订阅到netvibes

    原创 Java连接SQL Server 2000的问题一收藏

    新一篇: Java连接SQL Server 2000的问题二 | 旧一篇: JDK的问题及注意点(NoClassDefFoundError异常)

     

    数据库操作现在是项目开发的根本,学习Java首先应该学会怎么样连接数据库,用Java连接数据库可不像用Delphi这类工具那样设几个属性就OK,说简单也简单,说复杂,其实也挺复杂的,而且很麻烦,如果是初学,根本不能保证第一次就连接成功,下面以SQL Server 2000为例,说说Java连接数据库的基本方法,也记录一下心得。

    1、下载SQL Server 2000 driver for JDBC
    SQL Server 2000 Driver For JDBC Downloads
    该驱动截止目前有四个版本,建议下载最新的SP3版。
    该驱动安装成功后,请将安装目录下的lib目录下的三个.jar文件加到CLASSPATH中;如果你使用的是JBuilder或Eclipse,将这三个文件根据IDE的提示加到工程中也可。

    2、升级你的SQL Server 2000,为其打上最新的补丁。
    这一步可能不是必需的,因操作系统环境而定,在不打补丁的情况,有时可以正常连接,有时却不能,所以建议还是安装最新的SQL Server 2000补丁(SP4)和JDBC驱动(SP3)。
    如果你的程序在运行时提示:Error establishing socket,一般情况下,打上SQL Server 2000的补丁就可解决。

    3、驱动的加载方法
    在建立连接之前,要先加载SQL Server 2000 JDBC的驱动,代码形式如下:
    Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
    在此注意,forName方法的参数字符串必须完全相同于以上内容,大小写是区分的,其实这个串就是驱动类的完整名称:包名+类名。

    4、获得一个连接
    在操作数据库之前,要先获得与数据库的一个连接,使用如下代码格式:
    DriverManager.getConnection(连接字符串, 登录用户名, 登录密码);
    例:
    DriverManager.getConnection("jdbc:microsoft:sqlserver://localhost:1433; DatabaseName=pubs", "sa", "");
    在此处关键的是连接字符串的内容,localhost部分即服务器的名字,可以更改;1433部分为SQL Server使用的端口号,根据实际情况修改即可;DatabaseName即为要连接的数据库的名字,在此注意DatabaseName之前的是分号,而不是冒号。

    5、代码实例

    // 导入Java SQL包,连接数据库必需;
    import java.sql.*;

    public class TestDB {
    public static void main(String[] args) {
    String driverName = "com.microsoft.jdbc.sqlserver.SQLServerDriver";
    String dbURL = "jdbc:microsoft:sqlserver://localhost:1433; DatabaseName=pubs";
    String userName = "sa";
    String userPwd = "";
    Connection dbConn

    try {
    Class.forName(driverName);
    dbConn = DriverManager.getConnection(dbURL, userName, userPwd);
    System.out.println("Connection Successful!");
    }
    Catch (Exception e) {
    e.printStackTrace();
    }
    }
    }

    6、可能出现的问题
    如果以上的代码运行后,输出"Connection Successful!",那就代表一切正常,连接数据库成功,你可以进行Statement、ResultSet的操作了;反之的话,一定是出现了相应的异常。
    如果提示错误"Error establishing socket",请根据之前的说明安装相应的SQL Server 2000补丁即可。
    如果提示"ClassNotFoundException",那一定是 Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver"); 该段代码拼写有误,或者是SQL Server 2000 Driver For JDBC Lib目录下的三个.jar文件未加入到CLASSPATH中。

     下载SQLSERVER2000的jdbc驱动程序。

    在微软站点就有这个驱动程序:

    Window操作系统

    http://www.uncj.com/upload/files/ms_jdbc_setup.exe

    http://download.microsoft.com/download/3/0/f/30ff65d3-a84b-4b8a-a570-27366b2271d8/setup.exe

     

    Unix操作系统 Mssqlserver.tar

    http://download.microsoft.com/download/3/0/f/30ff65d3-a84b-4b8a-a570-27366b2271d8/mssqlserver.tar


    二、安装JDBC

    执行ms_jdbc_setup.exe可执行文件,一切只需要点击下一步,至到出现finish按钮,完成安装。

    注:

    (1) ms_JDBC_setup默认安装路径为:c:\Program Files\Microsoft SQL Server 2000 Driver for JDBC

    (2)此版(Version 2.2.0022)本仅支持Microsoft SQL Server 2000 Driver for JDBC

    (3)安装目录\lib\下的三个jar文件即是我们要的JDBC驱动核心

    msbase.jar

    mssqlserver.jar

    msutil.jar

     

    三、将以上(3)中指的三个jar文件加入到环境变量中去

    classpath:

    d:\webserver\lib\msbase.jar;d:\webserver\lib\mssqlserver.jar;d:\webserver\lib\msutil.jar

    注:也可以省事的将以上三个文件拷贝至你的jvm机所在的JAVA_HOME\jre\lib\ext目录下,不过不建议这么做。

     

    四、测试

    jsp文件:

     

     

    您的第一个字段内容为:

    您的第二个字段内容为:

     

     

     

    五、注意事项

    1. 要保证你的Sql服务是启动状态

    2. 在Sql 的管理器中能够使用sa或其它用户正常登录;(有些人在安装sql时用了nt用户管理模式,这里可能会有一定问题)

    3. 第一次配置好环境变量最好能重启一下电脑

    4. 注意JVM和DataBase的启动顺序:先启动DataBase,再启动JVM机。

    注:在停止Web服务器后,再重启动,中间最好能有10秒以上的间隔。

    5. 注意操作系统的网络连通性

    A.启动了Tcp/IP服务

    B.配置了相关IP地址,有些人机器可能用的是自动分配IP或有配置IP时,但网络不通可能也找不到IP

    6. 有些机器在调试明最好能将(四)中的连接地址localhost改成数据库服务器的IP,这也是要注意5的原因

    补丁安装过程中常见问题

    如果在安装补丁的时候遇到如下类似错误:

    1、安装过程中出现“以前进行的程序创建了挂起的文件操作,运行安装程序前,必须重新启动”,请按照下面步骤解决:

    a、重启机器,再进行安装,如果发现还有该错误,请按下面步骤

    b、在开始->运行中输入regedit

    c、到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager 位置

    d、选择文件->倒出,保存

    e、在右边窗口右击PendingFileRenameOperations,选择删除,然后确认

    f、重启安装,问题解决

    如果还有同样问题,请检查其它注册表中是否有该值存在,如有请删掉。

    2、在安装SQL Server SP3,有时候会出现:无论用windows认证还是混和认证,都出现密码错误的情况,这时查看临时目录下的sqlsp.out,会发现以下描述:

    [TCP/IP Sockets]Specified SQL server not found.

    [TCP/IP Sockets]ConnectionOpen (Connect()).

    其实这是SQL Server SP3的一个小bug,在安装sp3的时候,没有监听tcp/ip端口,可以按照以下步骤进行:

    1、打开SQL server客户器网络实用工具和服务器网络工具,确保启用的协议中包含name pipe,并且位置在第一位.

    2、确保[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\Client\ConnectTo]

    "DSQUERY"="DBNETLIB".

    如果没有,请自己建立

    3、停止mssql.

    4、进行安装.

    这样就可以进行正确安装了。

    二、SQL Server补丁版本的检查

    SQL Server的补丁版本检查不如Windows 补丁版本检查直接,一个系统管理员,如果不了解SQL Server版本对应的补丁号,可能也会遇到一点麻烦,因此在这说明一下,通过这样的办法判别机器是安全的办法,不会对系统产生任何影响。

    1、用Isql或者SQL查询分析器登录到SQL Server,如果是用Isql,请在cmd窗口输入isql -U sa,然后输入密码,进入;如果是用SQL查询分析器,请从程序中启动,输入sa和密码(也可以用windows验证)。

    2、在ISQL中输入:

    Select @@Version;

    go

    或者SQL查询分析器中输入(其实如果不想输入,只要打开帮助的关于就可以了:))

    Select @@Version;

    然后按执行;

    这时会返回SQL的版本信息,如下:

    Microsoft SQL Server 2000 - 8.00.760 (Intel X86) Dec 17 2002 14:22:05 Copyright (c) 1988-2003 Microsoft Corporation Enterprise Edition on Windows NT 5.0 (Build 2195: Service Pack 3)

    其中的8.00.760就是SQL Server的版本和补丁号。对应关系如下:

    8.00.194 -——————SQL Server 2000 RTM

    8.00.384 -——————(SP1)

    8.00.534 -——————(SP2)

    8.00.760 -——————(SP3)

    这样我们就能看到SQL Server的正确版本和补丁号了。 我们也可以用xp_msver看到更详细的信息。

    发表于 @ 2006年10月24日 09:40:00|评论(loading...)|编辑

    新一篇: Java连接SQL Server 2000的问题二 | 旧一篇: JDK的问题及注意点(NoClassDefFoundError异常)

    评论

    #javafreshfish 发表于2007-06-26 21:09:27  IP: 58.242.201.*
    我是个新手,我想问下这种方法与jdbc-odbc有什么不同???????
    他们哪个好些,我目前只用过jdbc-odbc 这种方法
    发表评论  


    登录
    Csdn Blog version 3.1a
    Copyright © it_man