首页新闻找找看学习计划

java连接sqlserver2008发生错误 Login failed for user 'sa'.

0
悬赏园豆:15 [已解决问题] 解决于 2013-07-01 20:05

登陆时sqlserver服务器名是PC-201208120941\SQLEXPRESS(本机名称)

不能用.登陆,安装时的一点问题

myeclipse里的代码

Connection conn=null;
        
    try {
          Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");    
    } catch (ClassNotFoundException e) {
    e.printStackTrace();
    }
    try {
        String sql="select Id,BloodType from BloodType";
         conn=DriverManager.getConnection("jdbc:sqlserver://PC-201208120941\\SQLEXPRESS:1433;databaseName=myqq","sa","sa");//异常代码
        System.out.println("连接成功");

 


异常

com.microsoft.sqlserver.jdbc.SQLServerException: Login failed for user 'sa'.
    at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDatabaseError(SQLServerException.java:196)
    at com.microsoft.sqlserver.jdbc.TDSTokenHandler.onEOF(tdsparser.java:246)
    at com.microsoft.sqlserver.jdbc.TDSParser.parse(tdsparser.java:83)
    at com.microsoft.sqlserver.jdbc.SQLServerConnection.sendLogon(SQLServerConnection.java:2532)
    at com.microsoft.sqlserver.jdbc.SQLServerConnection.logon(SQLServerConnection.java:1929)
    at com.microsoft.sqlserver.jdbc.SQLServerConnection.access$000(SQLServerConnection.java:41)
    at com.microsoft.sqlserver.jdbc.SQLServerConnection$LogonCommand.doExecute(SQLServerConnection.java:1917)
    at com.microsoft.sqlserver.jdbc.TDSCommand.execute(IOBuffer.java:4026)
    at com.microsoft.sqlserver.jdbc.SQLServerConnection.executeCommand(SQLServerConnection.java:1416)
    at com.microsoft.sqlserver.jdbc.SQLServerConnection.connectHelper(SQLServerConnection.java:1061)
    at com.microsoft.sqlserver.jdbc.SQLServerConnection.login(SQLServerConnection.java:833)
    at com.microsoft.sqlserver.jdbc.SQLServerConnection.connect(SQLServerConnection.java:716)
    at com.microsoft.sqlserver.jdbc.SQLServerDriver.connect(SQLServerDriver.java:841)
    at java.sql.DriverManager.getConnection(DriverManager.java:582)
    at java.sql.DriverManager.getConnection(DriverManager.java:185)
    at Ch10.text1.main(text1.java:22)
没发光的钻石的主页 没发光的钻石 | 初学一级 | 园豆:132
提问于:2013-05-10 13:36
< >
分享
最佳答案
0

用.NET的开发的时候有碰到过类似的问题,试下去把数据库连接改成远程连接试试。

收获园豆:15
Marcos.W | 菜鸟二级 |园豆:230 | 2013-06-19 23:11

不行,还是报这个错误

Login failed for user 'sa'.(错误:18456)

没发光的钻石 | 园豆:132 (初学一级) | 2013-06-21 14:03

@没发光的钻石: 

我上网找了下 :你试试这个人的方法:

 

 

第一步: 启动所有与SQL有关的服务,问题依旧; 第二步: 查看windows防火墙,被默认启动了,不启动选择项被Disabled 两个提示“由于安全考虑,某些设置由组策略控制”“Windows防火墙正在使用您的域设置”,先用gpedit.msc打组策略编辑器,机算机配置--管理模板--网络--网络连接--Windows防火墙--标准配置文件,查看右边各选项属性,都是未配置状态,问题不在这里。 另外一个提示中提到域设置,域设置不可能禁用SQL Server,并且我查看本地开放端口(netstart -an),25,1433,1434都是开发状态。 晕,会不会是密码错误? 第三步:用windows账号登录 连接成功后, 选择"属性" 右键实例,在"属性"窗口中, 转到"Security"(安全性)项, 查看"服务器身份验证"中设置确为"SQL Server和Windows身份验证模式", 然后执行下面的语句启用sa用户, 同时更改sa的密码 EXEC sp_password 'sa',null,'sa' ALTER LOGIN sa ENABLE 执行出错: 消息 15116,级别 16,状态 1,第 1 行 密码有效性验证失败。该密码太短,不符合 Windows 策略要求。 哈哈,问题找到。 本地设置可能被域设置覆盖。而域设置中指定了安全策略,密码必须有一定的复杂性。重新更改sa密码, EXEC sp_password 'sa','Uiop_098Mn','sa' ALTER LOGIN sa ENABLE
Marcos.W | 园豆:230 (菜鸟二级) | 2013-06-21 21:18
其他回答(1)
0

用户名和密码不一至

@@@一统@@@ | 园豆:1551 (小虾三级) | 2013-05-10 13:48

一致着类。都是sa,在数据库都能登进去

支持(0) 反对(0) 没发光的钻石 | 园豆:132 (初学一级) | 2013-05-10 17:01
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册