ms sql java_java连接ms sql server各类问题解析

首先先来说下使用微软自己开发的架包进行ms sql server数据库的连接时,sql 2000与sql 2005的连接方式略有不同;

1.首先驱动不一样,sql 2000的连接驱动包有三个,分别是:msbase.jar、mssqlserver.jar、msutil.jar;

而sql 2005的连接驱动包只有一个为:sqljdbc.jar;

2.由于连接的驱动不一样,自然而然连接的方式也是不一样的;

sql 2000:

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

URL = "jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=Demo";

sql 2005:

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

URL = "jdbc:sqlserver://localhost:1433;DatabaseName=Demo";

下面来说一个比较通用的方式:jtds-1.2.jar包,这个包是第三方开源组织提供,使用这个架包进行ms sql server数据库的连接,你可以不必担心不同版本数据库间的差异了;

统一连接方式为:

Class.forName("net.sourceforge.jtds.jdbc.Driver").newInstance();

String url="jdbc:jtds:sqlserver://localhost:1433;DatabaseName=Demo";

下面我还是来说下关于连接数据库要注意的几个方面:

1.如果你使用的sql server 2000,那么你在使用jdbc进行数据库的连接时还必须要安装sp3补丁;如果使用sql server 2005就不必了;

sql server 2000无法打开1433端口

可通过运行中输入netstat -a命令来查看已开启的端口,看看是否有1433端口开启(默认)

1.如果你是win2003,那么一定要安装sql的补丁sp3a

检查你的SQL有没有打补丁,没有的话要打上补丁,检查的方法是在查询分析器中运行:

select @@version

如果出来的版本号是8.00.760以下,则表明你未安装sp3的补丁,要装上.

SQL补丁下载:

全部补丁的位置

http://www.microsoft.com/downloads/details.aspx?displaylang=zh-cn&FamilyID=9032f608-160a-4537-a2b6-4cb265b80766

注意下载后,执行的时候是解压,要在解压后的目录中执行setup.bat才是真正的安装

2.如果你上面的已经确保无误了但还是连接不上数据库,那么我们来一一检查你连接的要素:

也可以用下面的main函数进行测试;将上面的数据名,端口号,密码等改成自己的(这里是采用jtds包进行连接的)

public static voidmain(String[] args) {try{

Class.forName("net.sourceforge.jtds.jdbc.Driver").newInstance();

}catch(InstantiationException e) {

e.printStackTrace();

}catch(IllegalAccessException e) {

e.printStackTrace();

}catch(ClassNotFoundException e) {

e.printStackTrace();

}

String url="jdbc:jtds:sqlserver://localhost:9433;DatabaseName=SportsUnion2";

String user="sa";

String psw="123@sports";

Connection conn=null;try{

conn=DriverManager.getConnection(url,user,psw);

System.out.println("连接数据库成功");

}catch(SQLException e) {

System.out.println("连接数据库失败");

e.printStackTrace();

}

-----------------------------------------------------------------------------------------------------------------------------------------------------------------------

b.查看你数据库的登录方式(我们一般是要选择登录方式为SQL Server和Windows 身份验证模式):

6e5d777f5241bd22f96984031ec49027.png

在打开的数据库视图中选择服务器(如上图)------>右键属性----->在出现的视图中选择安全性----->选择SQL Server和Windows 身份验证模式------>确定

bb3c0b21d57768f3b8f1b681a4fb2e5d.png

-----------------------------------------------------------------------------------------------------------------------------------------------------------------------

c.设置密码:在你的数据库视图中点击安全性---->出现的二级菜单中点击sa---->在出现的视图中重置下sa的密码:

bd11a5e45cb17fa511a4eb055555722a.png

然后为保险起见,你可以退出登录,然后重新打开登录,使用sa进行登录,如果能登录表示密码设置成功并且sa是可用的。

5231bce80819ee844fed01f292d90d09.png

-----------------------------------------------------------------------------------------------------------------------------------------------------------------

d.配置端口号:

sql 2000:开始---->所有程序----->Microsoft SQL Server----->服务器网络使用工具点击----->

0d9bb645914d7ac0910d6853890961b2.png

----->选中TCP/IP----->点击属性----->在出现的属性窗口中设置自己想要的端口号,默认为1433(最好不要默认的,容易受到攻击)

1c3ed9c9e271d653f417a373af2a4006.png

然后将服务器进行重启

sql 2005:

开始---->所有程序----->Microsoft SQL Server 2005----->配置工具----->SQL Server Configuration Manager----->SQL Server 2005 网络配置

------>MSSQLSERVER协议;启用“TCP/IP”;

d346b62ef707c978bbb201523c4afebe.png

双击“TCP/IP”-------->“IP 地址”-------->“IPAll”------->“TCP 端口”设置为自己想要的。

4d97875be3c6f9fca9675429be3d7e1f.png

重新启动sql2005服务器

--------------------------------------------------------------------------------------------------------------------------------------------------------------------

e.到这里如果你是使用sql server 2000的应该是没有问题了,但如果你是使用sql server 2005的,可能还是存在连不上的问题:

(1)数据库引擎没有启动,下面使用两种方式:

a.开始->程序->Microsoft SQL Server 2005->SQL Server 2005外围应用配置器,在打开的界面单击"服务的连接的外围应用配置器",在打开的界面中找到

Database Engine,单击"服务",在右侧查看是否已启动,如果没有启动可单击"启动",并确保"启动类型"为自动,不要为手动,否则下次开机时又要手动启动;

b.可打开:开始->程序->Microsoft SQL Server 2005->配置工具->SQL Server Configuration Manager,选中SQL Server 2005服务中SQL Server(MSSQLSERVER)

并单击工具栏中的"启动服务"按钮把服务状态改为启动;

(2)查看sql server 数据库是否已经启用远程连接

开始----->程序----->Microsoft SQL Server 2005----->配置工具----->SQL Server 外围应用配置器---->

e55873e96f18a35c0b9eafe7144707c9.png

单击服务和连接的外围应用配置器------>点击数据库引擎----->点击远程连接----->右边选中本地连接和远程连接

5ced1cfb9d901fc6581191d6366fbe32.png再选择要使用的协议,( 这个地方应当启用TCP/IP 和命名管道服务!)单击“应用”----->重启服务器;

(3)启用 SQLServer 浏览器服务

开始------>程序------>Microsoft SQL Server 2005------>配置工具------>SQL Server 外围应用配置器

------>在“SQL Server 2005 外围应用配置器”页, 单击“服务和连接的外围应用配置器”

------>然后单击展开“SQL Server Browser”, 选中“服务”,在右边“启动类型”选择“自动”------->再单击“启动”,单击“确定”按钮返回

现在应该连上了吧!  哈哈哈

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值