java 连接 2008_java-如何使用JDBC连接到SQL Server 2008数据库?

这篇博客提供了使用Java JDBC连接到SQL Server 2008数据库的方法。包括使用SQL身份验证和Windows身份验证的方式,以及具体的连接字符串和示例代码。同时提到了可能遇到的端口1433的TCP/IP监听问题和SQL Server Browser服务的状态。
摘要由CSDN通过智能技术生成

java-如何使用JDBC连接到SQL Server 2008数据库?

我在本地PC上安装了MSSQL 2008,并且Java应用程序需要连接到MSSQL数据库。 我是MSSQL的新手,我希望获得一些有关为Java应用程序创建用户登录并通过JDBC获得连接的帮助。 到目前为止,我尝试为我的应用创建用户登录名并使用以下连接字符串,但我根本无法工作。 任何帮助和提示将不胜感激。

jdbc:jtds:sqlserver://127.0.0.1:1433/dotcms

username="shuxer" password="itarator"

8个解决方案

73 votes

使用JDBC的方式主要有两种-使用Windows身份验证和SQL身份验证。 SQL身份验证可能是最简单的。 您可以做的是:

String userName = "username";

String password = "password";

String url = "jdbc:sqlserver://MYPC\\SQLEXPRESS;databaseName=MYDB";

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

Connection conn = DriverManager.getConnection(url, userName, password);

将sqljdbc4.jar添加到构建路径后。

对于Window身份验证,您可以执行以下操作:

String url = "jdbc:sqlserver://MYPC\\SQLEXPRESS;databaseName=MYDB;integratedSecurity=true";

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

Connection conn = DriverManager.getConnection(url);

然后将路径作为VM参数添加到sqljdbc_auth.dll(在构建路径中仍需要sqljdbc4.jar)。

请在此处查看一份简短的分步指南,该指南显示了在需要更多详细信息时如何使用jTDS和JDBC从Java连接到SQL Server。 希望能帮助到你!

Thusi answered 2020-01-12T09:09:59Z

32 votes

您可以使用:

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.ResultSet;

import java.sql.Statement;

public class ConnectMSSQLServer

{

public void dbConnect(String db_connect_string,

String db_userid,

String db_password)

{

try {

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

Connection conn = DriverManager.getConnection(db_connect_string,

db_userid, db_password);

System.out.println("connected");

Statement statement = conn.createStatement();

String queryString = "select * from sysobjects where type='u'";

ResultSet rs = statement.executeQuery(queryString);

while (rs.next()) {

System.out.println(rs.getString(1));

}

} catch (Exception e) {

e.printStackTrace();

}

}

public static void main(String[] args)

{

ConnectMSSQLServer connServer = new ConnectMSSQLServer();

connServer.dbConnect("jdbc:sqlserver://", "",

"");

}

}

Mahmut EFE answered 2020-01-12T09:10:19Z

7 votes

我也使用mssql server 2008和jtds。在我的情况下,我使用以下连接字符串,它可以工作。

Class.forName( "net.sourceforge.jtds.jdbc.Driver" );

Connection con = DriverManager.getConnection( "jdbc:jtds:sqlserver://

address>:1433/zacmpf", userName, password );

Statement stmt = con.createStatement();

kta answered 2020-01-12T09:10:38Z

6 votes

如果您在连接时遇到问题,最有可能的问题是您尚未在端口1433上启用TCP / IP侦听器。快速的“ netstat -an”命令将告诉您是否侦听。 默认情况下,SQL Server在安装后不会启用此功能。

另外,您需要在“ sa”帐户上设置一个密码,并启用“ sa”帐户(如果您打算使用该帐户进行连接)。

显然,这还意味着您需要在MSSQL节点上启用“混合模式身份验证”。

djangofan answered 2020-01-12T09:11:08Z

3 votes

尝试像这样使用:jdbc:jtds:[sqlserver://127.0.0.1/dotcms;] instance = instanceName

我不知道您使用的是哪个版本的mssql,如果是Express Edition,则默认实例为sqlexpress

不要忘记检查SQL Server Browser服务是否正在运行。

answered 2020-01-12T09:11:36Z

3 votes

您可以尝试配置SQL Server:

步骤1:打开SQL Server 20xx配置管理器

步骤2:在SQL Server配置中,单击SQL协议。 然后,右键单击“ TCP / IP”,选择“属性”。

步骤3:单击选项卡IP地址,编辑所有TCP。 端口是1433

注意:所有TCP端口是1433最后,重新启动服务器。

Nguyễn Anh Giàu answered 2020-01-12T09:12:14Z

2 votes

连接到SQL Server的简单Java程序。

注意:您需要将sqljdbc.jar添加到构建路径中

//本地主机:本地计算机充当服务器

// 1433:SQL默认端口号

//用户名:sa

//密码:使用密码,该密码在安装SQL Server Management Studio时使用,在我的情况下为“ root”

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.SQLException;

public class Conn {

public static void main(String[] args) throws InstantiationException, IllegalAccessException, ClassNotFoundException {

Connection conn=null;

try {

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

conn = DriverManager.getConnection("jdbc:sqlserver://localhost:1433;databaseName=company", "sa", "root");

if(conn!=null)

System.out.println("Database Successfully connected");

} catch (SQLException e) {

e.printStackTrace();

}

}

}

atishr answered 2020-01-12T09:12:56Z

0 votes

尝试这个。

导入java.sql.Connection;

导入java.sql.DriverManager;

导入java.sql.ResultSet;

导入java.sql.Statement;

公共类SQLUtil {

公共无效dbConnect(String db_connect_string,String db_userid,   字符串db_password){

尝试{

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

Connection conn = DriverManager.getConnection(db_connect_string,

db_userid, db_password);

System.out.println("connected");

Statement statement = conn.createStatement();

String queryString = "select * from cpl";

ResultSet rs = statement.executeQuery(queryString);

while (rs.next()) {

System.out.println(rs.getString(1));

}

} catch (Exception e) {

e.printStackTrace();

} }

公共静态void main(String [] args){

SQLUtil connServer =新的SQLUtil();

connServer.dbConnect(“ jdbc:[sqlserver://192.168.10.97:1433; databaseName = myDB”,]   “ sa”,                  “ 0123”);

}

}

Kamran answered 2020-01-12T09:15:08Z

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值