java连接sql2005出错

importjava.sql.*;publicclassTest{publicstaticvoidmain(String[]srg){StringdriverName="... import java.sql.*;
public class Test {
public static void main(String[] srg) {
String driverName = "com.microsoft.sqlserver.jdbc.SQLServerDriver"; //加载JDBC驱动
String dbURL = "jdbc:sqlserver://localhost:1433; DatabaseName=test"; //连接服务器和数据库test
//String dbURL = "jdbc:sqlserver://localhost:1433; DatabaseName=test"; //连接服务器和数据库test
String userName = "sa"; //默认用户名
String userPwd = "123456"; //密码
Connection dbConn;
try {
Class.forName(driverName);
dbConn = DriverManager.getConnection(dbURL, userName, userPwd);
System.out.println("Connection Successful!"); //如果连接成功 控制台输出Connection Successful!
} catch (Exception e) {
e.printStackTrace();
}
}
}

试了网上说的各种方法,包括打开TCP/IP 1433口,设置驱动包的clasapath,打开WINDOWS和SQL SERVER两种认证方式,打开用户登录名的状态为启动,用户映射选择db_owner和public等各种方法,但都被告知错误
(注意,我用sql express打开时,选择SQL SERVER认证方式,用sa是可以登录进去的)
错误的提示为:
com.microsoft.sqlserver.jdbc.SQLServerException: 用户 'sa' 登录失败。该用户与可信 SQL Server 连接无关联。
at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDatabaseError(Unknown Source)
at com.microsoft.sqlserver.jdbc.TDSTokenHandler.onEOF(Unknown Source)
at com.microsoft.sqlserver.jdbc.TDSParser.parse(Unknown Source)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.sendLogon(Unknown Source)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.logon(Unknown Source)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.access$000(Unknown Source)
at com.microsoft.sqlserver.jdbc.SQLServerConnection$LogonCommand.doExecute(Unknown Source)
at com.microsoft.sqlserver.jdbc.TDSCommand.execute(Unknown Source)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.executeCommand(Unknown Source)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.connectHelper(Unknown Source)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.loginWithoutFailover(Unknown Source)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.connect(Unknown Source)
at com.microsoft.sqlserver.jdbc.SQLServerDriver.connect(Unknown Source)
at java.sql.DriverManager.getConnection(DriverManager.java:582)
at java.sql.DriverManager.getConnection(DriverManager.java:185)
at Test.main(Test.java:12)
你们说的方法,我都试了,还是不行呀
展开
 我来答
weiweido
2009-10-28
知道答主
回答量:5
采纳率:0%
帮助的人:0
展开全部
如果不是代码的问题,试试这个:找到SQL服务器,在左栏中上面,单击右键,在弹出的菜单中选择“属性”命令。弹出一个对话框,单击“安全性”,在“服务器身份验证”下面选择“SQL SERVER和WINDOWS身份验证模式”,在前面打勾!记得这一步很重要,如果没有这一步你就别想登录成功!然后单击“确定”就可以了! 3:重新启动服务就可以选择SQL SERVER 身份验证模式登录了!输入刚才的用户名和密码就可以登录成功了!
或者把连接代码封装成一个方法,然后调用方法

参考资料: 互联网

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
hansirxu
2009-10-28
知道答主
回答量:2
采纳率:0%
帮助的人:0
展开全部
我运行了一下你的这个代码,是没有问的。
你得问出现有机可能:
1、你的环境变量没有配置好,你按照下面重新配置一下:
JAVA_HOME:D:\Program Files\Java\jdk1.6.0_13;
在PATH中添加:D:\Program Files\Java\jdk1.6.0_13\bin;
2、去SQLSERVER配置管理器中修改TCP端口:
网络配置/SQLSERVER协议/TCP/IP双击 IP地址选项卡:将最后一个TCP动态端口改为1433.之后重启SQLSERVER服务。
over
good luck!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
130111040409
2009-10-29
知道答主
回答量:32
采纳率:0%
帮助的人:0
展开全部
//加载JDBC驱动
String driverName = "com.microsoft.jdbc.sqlserver.SQLServerDriver";
你的加载jdbc驱动的字符串写错了吧!
其中“jdbc”与“sqlserver”写反了吧
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
我只看帖不发言
2009-10-29 · 超过30用户采纳过TA的回答
知道答主
回答量:79
采纳率:0%
帮助的人:56.7万
展开全部
String dbURL = "jdbc:sqlserver://localhost:1433; DatabaseName=test"; //连接服务器和数据库test

我记得我以前写的时候.
好像直接就是
jdbc:sqlserver://localhost:1433/test
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式