当前位置: 代码迷 >> J2EE >> 用windows身份访问sql2005为什么会出现异常?怎么解决
  详细解决方案

用windows身份访问sql2005为什么会出现异常?怎么解决

热度:169   发布时间:2016-04-22 02:33:34.0
用windows身份访问sql2005为什么会出现错误?如何解决?
Java code
try{            PrintWriter pw = res.getWriter();            //访问数据库进行读取数据            Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");            String dbURL = "jdbc:sqlserver://127.0.0.1:1433;integratedSecurity=true;DatabaseName=zeng";             ct = DriverManager.getConnection(dbURL);            ps = ct.prepareStatement("select * from memberMag;");            rs = ps.executeQuery();            while(rs.next()){                pw.println("ID:" + rs.getInt(1));                pw.println("userName:" + rs.getString(2));                pw.println("password:" + rs.getString(3));                pw.println("mail:" + rs.getString(4));                pw.println("userLevel:" + rs.getString(5));                pw.println("<br>");                pw.println("<hr>");            }        }catch(Exception ee){            ee.printStackTrace();        }finally{            try{                rs.close();                ps.close();                ct.close();            }catch(Exception ee){                ee.printStackTrace();            }        }

上面的代码会出现错误:

2010-8-11 16:56:39 com.microsoft.sqlserver.jdbc.AuthenticationJNI <clinit>
警告: Failed to load the sqljdbc_auth.dll
com.microsoft.sqlserver.jdbc.SQLServerException: 没有为集成身份验证配置驱动程序

at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError(U
nknown Source)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.sendLogon(Unknown So】

可是如果我用的是:ct = DriverManager.getConnection("jdbc:sqlserver://127.0.0.1:1433;databaseName=zeng" , "sa" , "123");
是能够正确的输出的。

到底该怎样设置才能使用windows用户登录sql2005呢?

------解决方案--------------------
应该映入该工程中一个驱动包mssqlserver.jar 
你也可以用本地资源 
DRIVER_CLASS为“sun.jdbc.odbc.JdbcOdbcDriver” 
DB_URL 为"JDBC:ODBC:数据源名" 
数据源 是在 开始----管理工具-----数据源(ODBC) 建立一个数据源 
因为级别低 不能传照片 具体步骤在网上搜一下就可以


你的数据库是不是还需要密码啊 
你在连接是有没有把数据库打开啊 


转自百度= =!!~~~我一直都是用有用户名密码的那种//
------解决方案--------------------
去数据设置里面看是不是 
 限制了 windows登陆
------解决方案--------------------
设置下数据库属性中的安全性选择混合登录
  相关解决方案