根据我自己的连接情况,综合网上的方法(也就是将网上的一些方法组合在一起,希望对你有帮助)
大家都知道sql server 有两种登录验证方式,即sql server验证方式和windows验证方式,但是sql server默认的是windows登录验证方式,我们如何启用sql server和windows混合的验证方式并成功登录呢?
在解决这个问题之前,我们首先要明白windows身份验证模式和SQL server身份验证模式有什么不同:
用windows身份验证是根据用户的windows身份权限来进行身份验证,这种方式要直接一些,只要windows登录密码正确就可以访问数据库,sql不判断sa密码。但是在远程连接的时候会因NTML验证的缘故,无法登陆。
用混合身份验证模式,也就是基于Windows身份验证和SQL Server身份混合验证。这个连接不仅包括远程用户还包括本地用户,当远程用户访问时由于未通过windows认证,而进行sql server认证,从而使得远程用户也可以登录。
下面就来介绍一下如何启用sql server和windows混合的验证方式吧。
首先,以默认的windows验证方式打开并登录SQL Server 2008
第二步:登录后定位到“\安全性\登录名”,选择要使用sql server登录验证方式的用户(例如sa),右击sa,选择“属性”。
第三步:打开“属性”窗口后,定位到“常规”选项卡,修改密码并勾选或取消勾选相应复选框选项。
第四步:然后切换到“状态”选项卡,选择“连接到数据库”为“授予”,“登录”为“启用”,之后点击右下方的“确定”按钮保存退出。
第五步:右击连接数据库的登录用户,在出现的右键菜单中选择“属性”选项,之后将出现下图第二张图所示的界面。切换到“安全性”选项卡,在“服务器验证方式”下选择“sql server和windows身份验证模式”,点击“确定”保存退出。
第六步:右击连接数据库的登录用户,在出现的右键菜单中选择“停止”选项,停止服务器进程,在出现的提示窗体中选择“是”。
第七步:当sql server服务器图标变为黄色的时候,依然右击它,点击“启动”,在出现的提示窗体中选择“是”。
第八步:关闭microsoft sql server,重新以sa用户登录,便可以成功利用sql server登录验证方式登录sql server。
二: jsp页面中连接数据库的相关操作
-
把sqljdbc4.jar(http://pan.baidu.com/s/1jGKhudw 连接失效,搜索sqljdbc4.jar 杰克涨到文件)放在tomcat 文件夹下得了lib文件夹中。
-
建立一个 简易 的数据库 名称为 jsp ,账号 sa 密码123456 .
-
建立数据源,打开 控制面板 选择 管理工具,打开odbc数据源(我选的32位,目测64位也可以)。
-
选择 添加 ,如图,点击完成。
-
名称 jsp 数据库 (local),下一步
-
如图,下一步
-
如图,下一步。完成。
三:加载驱动、建立连接
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver").newInstance();
Connection conn =null;
try{ //不知道为什么我这里不能写成"jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=book"
conn=DriverManager.getConnection("jdbc:sqlserver://127.0.0.1:1433;DatabaseName=book","sa","123456");
}catch(Exception e){
e.printStackTrace();
}
Statement stmt=conn.createStatement();