Java连接SQL Server教程全

Java连接SQL Server教程全首先 在连接数据库之前必须保证 SQLServer 是采用 SQLServer 身份验证方式而不是 windows 身份验证方式 如果在安装时选用了后者 则重新设置如下 在默认情况下 SQLServerExp 是采用集成的 Windows 安全验证且禁用了 sa 登录名 为了工作组环境下不使用不方便的 Windows 集成安全验证 我们要启用 SQLServerExp 的混合安全验证 也就是说由 SQL

首先,在连接数据库之前必须保证SQL Server是采用SQL Server身份验证方式而不是windows身份验证方式。如果在安装时选用了后者,则重新设置如下:

在默认情况下,SQL Server Express是采用集成的Windows安全验证且禁用了sa登录名。为了工作组环境下不使用不方便的Windows集成安全验证,我们要启用SQL Server Express的混合安全验证,也就是说由SQL Server来验证用户而不是由Windows来验证用户

1、打开SQL Server Management Studio Express
打开SQL Server,登录界面中身份验证首先选择 Windows 身份验证,点击连接进入
SQL登录界面




当我们启动SQL Server Management Studio Express时,首先它要连接到我们的SQL Server 2008 Express,我们在安装SQL Server 2008 Express时,默认的实例为SQLExpress,服务器名称的组成为:机器名\实例名,因此,本例的服务名称为MATTJASON\SQLEXPRESS(注:安装SQL Server 2008 Express的机器名为MATTJASON)。第一次使用SQL Server Management Studio Express,由于我们必须采用Windows身份验证,这是默认安装时决定的。

2、设置身份验证
右击对象资源管理器下的第一行的MATTJASON\SQLEXPRESS(视具体机器名而变),选择属性,如下图所示。
属性
打开后选择安全性
安全性
下面这张图清晰一点
大图
选择好后确认并关闭。
重启
要求重启,退出程序,再次进入。这一步很重要!


















3、 设置sa的密码并启用sa登录名
点击安全性,再点击登录名,看到sa,右击选择属性
sa
打开后如下图所示。
由于我们不知道sa的密码,所以我们须设置一个!更改密码,可以设置一个简单好记的,我设置的是qwerty。
并且取消强制实施密码策略的选项!
sa属性
不要关闭这个窗口,接着选择左侧的“状态”,默认情况下,sa登录名是禁用的,因此,我们必须启用sa登录名,选择右侧的登录下的“启用”
并且选择上方的授予!如图所示。
登录属性
最后,我们点击窗口下面的“确定”按钮。
好了,到此为止,SQL Server 2008 Express服务器已经可以让sa登录了,不过,






















重新启动一下,让配置生效

右击MATTJASON\SQLEXPRESS,选择重新启动!很重要!

4、验证sa登录
退出SQL,重新打开,选择SQLServer身份验证方式,输入刚才设置的sa密码,连接!
重启
如果可以成功进入,那么就配置成功了,如果进不去,说明刚才有步骤没有设置,需要重新设置一下,不要着急,我当时也是配置好久。。。。






当你保证SQL Server 2008是采用SQL Server身份验证方式后,先跳至第7步进行连接测试,如果无法连接则进行第5步。

如下配置:

因为SQL Server 2008装好后,默认协议是没有开启的,所以要打开SQL Server配置管理器中开启:

5、SQL Server配置管理器(可选)
安装好SQL Server 2008后,运行 开始 → 所有程序 → Microsoft SQL Server 2018 → 配置工具 → SQL Server配置管理器,如下图所示:
SQL配置管理器
打开的窗口如下图所示。在左边栏找到 SQL Server网络配置选项,点开它的小箭头,会看到“【你的数据库名】的协议” (图中是SQLEXPRESS的协议),选中它,看右边栏。
EXPRESS
Named Pipes 右击启用,同样的,右击TCP/IP 点击启用!
双击TCP/IP(右键→属性),在弹出的窗口中选择 “IP地址” 选项卡.
IP1和IP10的【IP地址】设为127.0.0.1,并将所有【IP+数字】的【已启用】设为是。接着,拖动下拉条到最下方,将IP1、IP10、 IPAll 中的【TCP端口】设成 1433,这是SQL的传输端口,非常重要!
1433
IP
重新启动计算机!




















6、打开telnet并测试1433端口(可选)
接下来使用telnet命令测试1433端口是否打开。首先要保证telnet服务开启。
打开telnet服务:
依次点击“开始”→“控制面板”→“程序”(W10下直接在文件资源管理器上的搜索框输入 控制面板 进入),“在程序和功能”找到并点击“打开或关闭Windows 功能”进入Windows 功能设置对话框。找到并勾选“Telnet客户端,最后“确定”稍等片刻即可完成安装。
程序
找到启用或关闭Windows功能
功能
找到Telnet,点选,确定。
Telnet
安装完成后,Telnet服务默认情况下是禁用的。还需执行“开始”→“运行”(或者按住win键和R键),输入services.msc打开服务管理器。找到并双击Telnet服务项,设置其启动方式为“手动”(更安全,只在需要的时候才启用),最后“启动”该服务“确定”退出即可。


















完成上一步后。开始菜单 → 运行cmd → 输入:telnet 127.0.0.1 1433,(注意telnet与127之间有空格,1与1433之间有空格)
CMD
测试是否成功,如果成功则说明配置成功,如果连接失败则说明上面的配置有误,同志仍需努力!




7、下载Microsoft JDBC Driver 4.0 for SQL Server
官方下载地址:http://www.microsoft.com/zh-cn/download/details.aspx?id=11774

下载sqljdbc_4.0.2206.100_chs.tar.gz(2.2M),解压文件,得到sqljdbc41.jar和sqljdbc42.jar。如果你使用的是jre1.7版本,则忽略sqljdbc.jar(因为它用不了,而且如果和sqljdbc41.jar一起用会出错),只留下sqljdbc41.jar

以下设置均针对jre1.7版本(1.7以下应该也适用):

在D盘新建一个文件夹,命名为sqljdbc4,将sqljdbc41.jar复制一个进去。

8、配置环境变量
右击 我的电脑 → 属性 → 高级系统设置(高级) → 环境变量,在系统变量中双击CLASSPATH变量(或选中CLASSPATH后 → 编辑),在最后面追加 “;D:\sqljdbc4 \sqljdbc41.jar” (注意最前面有个 ; )若不存在CLASSPATH,就新建CLASSPATH变量,并且将其值设为“D:\sqljdbc4 \sqljdbc41.jar”。
环境变量
连续点击 确定 以退出环境变量配置。






有几个地方需要注意:

(1)我们需要将sqljdbc41.jar类库文件拷贝到E:\Program Files\Java\jdk1.7.0\jre\lib\ext目录下。(看你安装在哪个盘,如果是C盘,则最前面的E改为C,下同)

(2)我们需要将sqljdbc4.jar类库文件拷贝到E:\Program Files\Java\jre7\lib\ext目录下

最好是,只要是jre文件夹,都复制一个sqljdbc41.jar到jre7\lib\ext里去!!

(3)如果是使用Tomcat做服务器(我使用的是Tomcat7),那么我们需要将sqljdbc4.jar类库文件拷贝到C:\apache-tomcat-7.0.11\lib目录下。

(4)如果是使用Tomcat做服务器,那么我们需要将sqljdbc4.jar类库文件拷贝到E:\apache-tomcat-7.0.11\webapps\gaofei\WEB-INF\lib目录下(gaofei目录是我的应用,这个路径相信你会看明白)

注意,只有sqljdbc4.jar !!如果把sqljdbc.jar和sqljdbc4.jar都拷在一起的话,这样就算你全都做对了,也会持续出现有“此驱动程序不支持JRE1.7,请使用支持JDBC4.0的sqljdbc4.jar的类库”的问题。因为jdk默认地选择了sqljdbc.jar(前面我已经提到,只留下sqljdbc4.jar)。

9、使用Eclipse测试连接SQL Server 2008数据库

1、打开SQL Server 2008,在其中新建数据库 Test,然后退出SQL Server 2008。

2、运行Eclipse,新建一个Java Project 名为 Test。

3、右单击src,依次选择 Build Path → Configure Build Path,在打开的窗口的右边选择 Libraries标签,然后单击 Add External JARs,找到刚才下载的sqljdbc4.jar 文件并打开,然后单击 OK 完成构建路径的配置。
JAR

import java.sql.*; public class Main { public static void main(String[] args) { String driverName = "com.microsoft.sqlserver.jdbc.SQLServerDriver"; String dbURL = "jdbc:sqlserver://localhost:1433;DatabaseName=Test"; String userName = "sa"; String userPwd = "qwerty"; Connection dbConn = null; try { Class.forName(driverName); dbConn = DriverManager.getConnection(dbURL, userName, userPwd); System.out.println("连接数据库成功"); } catch (Exception e) { e.printStackTrace(); System.out.print("连接失败"); } } } 

温馨提示:如果要对数据库中的某个表进行操作,需要像这样子做:String sql = “SELECT* FROM [数据库名].[dbo].[表名] where xxx “; 例如String sql = “SELECT* FROM [metro].[dbo].[4] wherexxx” 。注意,中括号是必要的,不能去掉。

成功

最后运行,如果出现连接成功就说明大功告成了,可以开始你的数据库开发之旅了!!

在这里插入图片描述

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/176877.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月26日 下午8:49
下一篇 2026年3月26日 下午8:49


相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号