java sqlserver 异常处理_关于java连接sqlserver数据库的一系列问题的解决方法

老师让座一个作业,大概的目的就是让我们了解如何让java程序去连接数据库,对于初学者来说,根本就没有一点概念就是怎样去连接,所以,今天我就把我的一些经验分享给大家!

我以我们老师给的一个做好的项目的为例,来详细的的给大家分析每一步该怎样做,当运行程序抛出异常又该怎样去解决!好吧,废话不多,开始!

首先第一步

附加数据库SQL Server

(1)安装sqlserver,版本要求至少是sqlserver2000,高版本更好,因为高版本毕竟功能要多一些,但是在这个项目中sqlserver2012在操作过程中会出现一些问题,这里先不做讨论

(2)将Database文件夹中的扩展名为db_library_Data.MDF和db_library_Log.LDF的两个文件拷贝到SQL Server安装路径下的Data文件夹中(这个应该自己会找吧,这里就不阐述了,因为每个人安装路径不同)。这里为什么要先拷贝到这个目录下在附件,是因为涉及到一个NTFS权限的问题,所以为了少一些麻烦,就干脆将这个文件拷贝到Date文件夹中。

(3)这里就是根据你不同的数据库管理系统也就是sqlserver的不同版本来进行了,

一、如果你是2000,那么,你的步骤是:

1.打开SQL Server 2000中的“企业管理器”,然后展开本地服务器,在“数据库”数据项上单击鼠标右键,在弹出的快捷菜单中选择“所有任务”/“附加数据库”菜单项。

2.将弹出“附加数据库”对话框,在该对话框中单击【...】按钮,选择所要附加数据库的db_library_Data.MDF文件,单击【确定】按钮,即可完成数据库的附加操作。

二、如果你是2005,2008,2012,那么步骤基本上一样

1.开始菜单,然后打开你的SQL Server Manage Studio,然后登陆,登陆的时候请检查你的服务打开没有!

2.登陆成功后,找到右边菜单“数据库”,

f5c5c629f41a636106a9c46872061c73.png

右键数据库,在弹出下拉框中选择“附加(A)..”,弹出下面这个窗口:

abb5d79255b54e0498f6e080ef238e58.png

然后点击“添加(A)...”,弹出的“定位数据库文件”窗口,然后找到刚才拷贝到Date文件夹的db_library_Data.MDF,然后一路确定下去就可以了。到此,数据库附加的工作就完成了,但是这里,需要注意的就是sqlserver2012会在最后一步的时候提示出错:

fec97c4fac136d1233b6af57fd22bc07.png

点击他所说的超链接:

84e657c5dc609abe402e04fa51613367.png

他说不兼容,我擦,当时就无语了,因为我的就是2012版本的,于是我想了一个办法,而且最后经验证,我的想法是对的,把这个问题给解决掉了,大概步骤如下:

1.找到一个安装有2008的机器,然后将db_library_Data.MDF附加上去,因为2008不会出现这个错误,附加成功后,刷新数据库,选择刚刚附加的这个数据库,也就是db_library_Data,右键,弹出的下拉选择菜单,鼠标移到“任务”然后选择任务里面的“备份”,弹出这个窗口:

372f594a1269813201c0d5400cadccc8.png

记住你备份的文件的位置,备份文件的后缀名一般为.bak;然后点击确定,这样,数据库就备份好了。接下来,就是在磁盘中找到刚才的备份文件,将他拷到你的电脑(安装了2012的那个)上,打开sqlserver manage studio,选择右边树状菜单的“数据库”,右键,“还原数据库”;看到如下窗口:

b63073178dad60f2602f13be4039656c.png

选择“设备“,然后单击右边的那个”...“按钮

4badda7b2b403f00c1b0ae8ff0616484.png

选择刚好你在另外一台2008备份的那个.bak文件,

00a613a7294af4d7211563c7f1cbda01.png

2315e8cb6bb425a0be40443a4573ab0d.png

然后,一路确定下去;最后,你就可以看到你想要的结果了。

到此,数据库部分真正的结束。

二。发布与运行

(1)启动eclipse,然后单击菜单栏的”File“菜单,弹出下拉选择框,选择”导入(Import)“

d1a34a808f450733c4ed8d8b3e707a19.png

然后在弹出的视图窗

466d68870ec4f68f724adfa8eb896539.png

选择红圈部分,然后next,再选择你需要导入的工程项目所在文件

7edefcab985c95009c0985c5f3b02838.png

注意红圈部分:

2ecbe0c96b0b4cf2e34cbfabb1842f37.png

finish.

(2)然后到下一部(这一步比较容易出错),如果你的是sqlserver2000的话,按照如下步骤:

1.找到这个地方

427ff66cf702754932f5122bfcaf6939.png

2.双击它出现他的编辑窗口,要将原先他的连接字符串做一定的修改,连接字符串在下图红色部分,将它改成你登陆sqlserver的用户名和密码,其他部分可以暂时不变

2036495b95f576f535b20e19dbb12847.png

3.然后一步就是在项目上单击鼠标右键,依次选择“新建”/“文件夹”命令,新建一个“lib”文件夹,然后,将SQL

Server 2000数据库驱动文件“msbase.jar、mssqlserver.jar、msutil.jar”拷到该文件夹中。在该文件上单击鼠标右键,选择“构建路径”/“添加至构建路径”命令。

好了,到此可以运行了,步骤为:

在导入工程的src文件中,找到可执行的主类,在该类上单击鼠标右键,选择“运行方式”/“Java应用程序”项,如图

90fa4cb01970fb66b62275fa01b11485.png

这样就可以登陆了。

那么对于我们是sql2005还有更高版本的情况下,该怎样解决

步骤(1)完全相同,到步骤(2)的第1步也相同,到了第2步,这个地方就开始有所不同了,划红线的地方都需要做修改

7a1bdcaae6f5702d0d6ceb25a66fa2e1.png

改为如下:

第一个:protected static String dbClassName = "com.microsoft.sqlserver.jdbc.SQLServerDriver";//这是因为连接的jdbc的版本不同造成的

protected static String dbUrl = "jdbc:sqlserver://localhost:1433;"//这是因为连接的jdbc的版本不同造成的

+ "DatabaseName=db_library;SelectMethod=Cursor";

protected static String dbUser = "sqlserver用户名";

protected static String dbPwd = "sqlserver用户对应的密码";

这个地方就该到这里就行了,然后到了下一步构建数据库驱动文件的时候了,在这里,由于是高版本的sqlserver2005或者更高的版本,所以要选择高版本的jdbc4.0,这里附链接:http://pan.baidu.com/share/link?shareid=119022&uk=1259821484,下载完以后解压,找到sqljdbc.jar,sqljdbc4.jar这两个文件,这时候又要看你安装的java虚拟机的版本了,

sqljdbc.jar类库要求使用 5.0 版的 Java 运行时环境 (JRE)。连接到数据库时,在 JRE 6.0 上使用sqljdbc.jar会引发异常。JDBC 驱动程序不支持 JRE 1.4。使用 JDBC Driver 时必须将 JRE 1.4 升级至 JRE 5.0 或 JRE 6.0。在某些情况下,您可能需要重新编译应用程序,因为它可能与 JDK 5.0 或更高版本不兼容。有关详细信息,请参阅 Sun Microsystems 网站上的文档。

sqljdbc4.jar类库提供对 JDBC 4.0 的支持。它不仅包括sqljdbc.jar的所有功能,还包括新增的 JDBC 4.0 方法。sqljdbc4.jar类库要求使用 6.0 版的 Java 运行时环境 (JRE)。在 JRE 1.4 或 5.0 上使用sqljdbc4.jar会引发异常。如果应用程序必须在 JRE 6.0 上运行,即使该应用程序不使用 JDBC 4.0 功能,也应使用sqljdbc4.jar。

怎样看自己jre版本,步骤:开始 -> 运行->cmd -> java -version  ,这样就可以看到了,这样,你就可以选择到底是选择sqljdbc4.jar还是sqljdbc.jar,做出选择后在项目上单击鼠标右键,依次选择“新建”/“文件夹”命令,新建一个“lib”文件夹,然后,将SQL

Server 2005或者更高版本数据库驱动文件“sqljdbc4.jar(sqljdbc.jar)”拷到该文件夹中。在该文件上单击鼠标右键,选择“构建路径”/“添加至构建路径”命令。

到此,高版本的也基本上完成了,可能在连接的过程中还会出现一些异常,比如可能的就是sqlserver的服务没开启,端口没开启,这个地方很是要注意,因为默认是关着的,一定要打开打开

7f422f8239404b840b33a957f52b6537.png

上面打开过后,还要确定下图的地方打开了:

14b85afff1a20a25bc3200a0e47f1bc8.png

大概就是这么多了,能想到的也就这么多了,有问题可以给我留言

  • 0
    点赞
  • 1
    收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
©️2022 CSDN 皮肤主题:数字20 设计师:CSDN官方博客 返回首页
评论

打赏作者

醋不及防

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值