当前位置: 代码迷 >> Eclipse >> java,用连接池连接数据库,用户名,登录失败解决思路
  详细解决方案

java,用连接池连接数据库,用户名,登录失败解决思路

热度:56   发布时间:2016-04-23 02:10:55.0
java,用连接池连接数据库,用户名,登录失败
用的是SQL server 2008.安装时,一切默认。也没有设置用户名和密码
代码如下:import java.sql.*;
public class Sqldemo1 {
public static void main(String[] args)
{
Connection con;
PreparedStatement pre;
ResultSet rs;


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

}
catch(ClassNotFoundException e)
{
System.out.println("cuo"+e);
}

try
{
String uri="jdbc:sqlserver://localhost:1433;DatebaseName=factory";

con=DriverManager.getConnection(uri,"","");

pre=con.prepareStatement("SELECT * FROM employee");
rs=pre.executeQuery();

while(rs.next())
{
String number=rs.getString(1);
String name=rs.getString(2);
Date birth=rs.getDate(3);
double salary=rs.getDouble(4);
System.out.println(number+","+name+","+birth+","+salary);
}
con.close();
}
catch(SQLException e)
{
System.out.println("c"+e);
}
}
}
编译结果为:
ccom.microsoft.sqlserver.jdbc.SQLServerException: 用户 '' 登录失败。 ClientConnectionId:8f5adc92-d681-47b7-b65b-4df19e92fad3

------解决方案--------------------
com.microsoft.sqlserver.jdbc.SQLServerException: 用户 '' 登录失败
这个不是编译结果,是运行结果吧。。。


用户尝试用sa来登录,SQLServer没有匿名用户的:
con=DriverManager.getConnection(uri, "sa", "");


另外,最好还是设置个密码。
------解决方案--------------------
试试用户名:sa 密码:.
------解决方案--------------------
打开配置管理器 点击左边sqlserver服务项 看右边是否存在2个sqlserver(...) 是的话 停止sqlserver(mssqlserver) 然后展开sql server 网络配置 选sql server(sqlexpress) 然后配置TCP/IP项 将TCP端口全部设置为1433 即默认端口 然后启动TCP/IP(停止了的话) 再重启sqlserver(sqlexpress)
  相关解决方案