一、安装SQL Server驱动程序
1、打开IDEA,创建Maven项目
2、在pom.xml文件中添加以下依赖:
<dependency>
<groupId>com.microsoft.sqlserver</groupId>
<artifactId>mssql-jdbc</artifactId>
<version>8.2.2.jre15</version>
</dependency>
3、在命令行运行以下命令安装驱动程序:
mvn install:install-file -Dfile=C:\sqljdbc_8.2\enu\mssql-jdbc-8.2.2.jre15.jar -DgroupId=com.microsoft.sqlserver -DartifactId=mssql-jdbc -Dversion=8.2.2.jre15 -Dpackaging=jar
二、创建SQL Server数据库并配置连接
1、打开SQL Server Management Studio,创建一个测试数据库
2、使用以下代码创建一个用户,并授予该用户对数据库的权限:
CREATE LOGIN myuser WITH PASSWORD='mypassword';
CREATE USER myuser FOR LOGIN myuser;
GRANT CONNECT TO myuser;
GRANT SELECT, INSERT, UPDATE, DELETE TO myuser;
3、使用以下代码配置数据库,允许远程连接:
EXEC sp_configure 'remote access', 1;
RECONFIGURE;
三、在IDEA中连接数据库
1、打开IDEA,创建Java文件
2、使用以下代码连接数据库:
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
public class Main {
public static void main(String[] args) {
String connectionUrl =
"jdbc:sqlserver://localhost:1433;" +
"databaseName=mydatabase;" +
"user=myuser;" +
"password=mypassword";
try (Connection connection = DriverManager.getConnection(connectionUrl)) {
System.out.println("Connected to database");
} catch (SQLException e) {
e.printStackTrace();
}
}
}
3、运行代码,如果控制台输出“Connected to database”则连接成功。
四、常见问题及解决方法
1、连接超时
如果连接超时,可以使用以下代码设置连接超时时间:
String connectionUrl =
"jdbc:sqlserver://localhost:1433;" +
"databaseName=mydatabase;" +
"user=myuser;" +
"password=mypassword;" +
"loginTimeout=30";
2、ClassNotFoundException
如果在运行时发生ClassNotFoundException,则可能是由于没有正确安装驱动程序或者没有将驱动程序添加到类路径中。
3、无法连接到数据库
如果无法连接到数据库,则可能是由于以下原因:
- 数据库不存在
- 用户名或密码不正确
- 防火墙阻止了连接
- SQL Server没有启用TCP/IP协议
可以通过检查数据库是否存在、用户名和密码是否正确,并且确保在防火墙中打开了1433端口来解决问题。如果SQL Server没有启用TCP/IP协议,则需要在SQL Server配置管理器中启用TCP/IP协议。