怎么使用JDBC连接SQL Server
4个回答
2016-04-24 · 做真实的自己 用良心做教育
千锋教育
千锋教育专注HTML5大前端、JavaEE、Python、人工智能、UI&UE、云计算、全栈软件测试、大数据、物联网+嵌入式、Unity游戏开发、网络安全、互联网营销、Go语言等培训教育。
向TA提问
关注
展开全部
首先确保SQLSERVER服务正在运行,并可以允许远程访问连接
然后按如下步骤进行连接
1.安装JDBC驱动
1)下载JDBC驱动
2)执行sqljdbc_4.0.2206.100_chs.exe解压驱动文件
3)拷贝以下目录中的sqljdbc_auth.dll到Windows的System32目录。对x64的机子,x64的dll拷到C:\Windows\System32,x86的dll拷到C:\Windows\SysWOW64目录。
Microsoft JDBC Driver 4.0 for SQL Server\sqljdbc_4.0\chs\auth\
2.在Java程序中连接SQL Server
classpath中加上安装好的SQL Server jdbc jar包
Microsoft JDBC Driver 4.0 for SQL Server\sqljdbc_4.0\chs\sqljdbc4.jar
连接SQL Server的JDBC代码
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
String url = "jdbc:sqlserver://localhost:54364;databaseName=master;IntegratedSecurity=True";
Connection con = DriverManager.getConnection(url);
在SQL Server Browser服务开启的情况下也可以通过服务名连接
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
String url = "jdbc:sqlserver://localhost\\SQLEXPRESS;databaseName=master;IntegratedSecurity=True";
Connection con = DriverManager.getConnection(url);
3.身份验证模式
SQL Server默认使用Windows身份验证模式,这也是官方推荐的模式,安全性更高。上面的连接例子就是采用的Windows认证。如果要使用混合认证模式,需要下载SQL Server Management Studio,并通过SQL Server Management Studio修改认证模式为混合认证模式。
SQL Server Management Studio的下载地址
http://www.microsoft.com/zh-cn/download/details.aspx?id=8961
修改SQL Server认证模式的方法
http://technet.microsoft.com/zh-cn/library/ms188670(v=sql.105).aspx
混合认证模式下,可以由数据库进行认证,连接时需要提供用户名和密码
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
String url = "jdbc:sqlserver://localhost:54364;databaseName=master";
Connection con = DriverManager.getConnection(url,"user","password");
然后按如下步骤进行连接
1.安装JDBC驱动
1)下载JDBC驱动
2)执行sqljdbc_4.0.2206.100_chs.exe解压驱动文件
3)拷贝以下目录中的sqljdbc_auth.dll到Windows的System32目录。对x64的机子,x64的dll拷到C:\Windows\System32,x86的dll拷到C:\Windows\SysWOW64目录。
Microsoft JDBC Driver 4.0 for SQL Server\sqljdbc_4.0\chs\auth\
2.在Java程序中连接SQL Server
classpath中加上安装好的SQL Server jdbc jar包
Microsoft JDBC Driver 4.0 for SQL Server\sqljdbc_4.0\chs\sqljdbc4.jar
连接SQL Server的JDBC代码
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
String url = "jdbc:sqlserver://localhost:54364;databaseName=master;IntegratedSecurity=True";
Connection con = DriverManager.getConnection(url);
在SQL Server Browser服务开启的情况下也可以通过服务名连接
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
String url = "jdbc:sqlserver://localhost\\SQLEXPRESS;databaseName=master;IntegratedSecurity=True";
Connection con = DriverManager.getConnection(url);
3.身份验证模式
SQL Server默认使用Windows身份验证模式,这也是官方推荐的模式,安全性更高。上面的连接例子就是采用的Windows认证。如果要使用混合认证模式,需要下载SQL Server Management Studio,并通过SQL Server Management Studio修改认证模式为混合认证模式。
SQL Server Management Studio的下载地址
http://www.microsoft.com/zh-cn/download/details.aspx?id=8961
修改SQL Server认证模式的方法
http://technet.microsoft.com/zh-cn/library/ms188670(v=sql.105).aspx
混合认证模式下,可以由数据库进行认证,连接时需要提供用户名和密码
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
String url = "jdbc:sqlserver://localhost:54364;databaseName=master";
Connection con = DriverManager.getConnection(url,"user","password");
展开全部
前期准备,具体包括
1]
下载安装SQL Server(本文以SQL Server 2012为例)
2]
下载Microsoft JDBC Driver for SQL Server
3]
下载并且安装集成开发环境 Eclipse IDE for Java EE Developers(可选)
准备用于查询的数据库和数据表
打开SQL Server Manage Studio打开SQL Server 2012
新建一个名为UniversityDB的数据库
新建一个名为course的表并且插入如下记录
在Eclipse中建立工程并且进行配置
打开Eclipse
新建一个Dynamic Web Project
命名为JDBCdemo
将之前下载的sqljdbc4.jar复制到WEB-INF/lib目录下。
如果WEB-INF目录下没有lib目录,就手动创建。
右键单击工程名,在弹出的菜单中选择Build Path
如果选择 add JARs
然后选中sqljdbc4.jar之后点确定。
在工程目录的WebContent目录下新建一个JSP文件
添加如下代码
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<%@ page import="java.sql.*" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Insert title here</title>
</head>
<body>
<%
Statement sql;
ResultSet rs;
String driverName = "com.microsoft.sqlserver.jdbc.SQLServerDriver"; //加载JDBC驱动
String dbURL = "jdbc:sqlserver://localhost:1433; DatabaseName=UniversityDB"; //连接服务器和数据库sample
String userName = "sa"; //默认用户名
String userPwd = "wkt19910602"; //密码
Connection dbConn;
try {
Class.forName(driverName);
dbConn = DriverManager.getConnection(dbURL, userName, userPwd);
sql=dbConn.createStatement();
rs=sql.executeQuery("select*from course");
System.out.println("Connection Successful!"); //如果连接成功 控制台输出Connection Successful!
out.println("<table Border>");
out.println("<tr><td colspan=8 align=center>用户数据</td></tr>");
out.println("<tr>");
out.println("<td width=100>CourseId</td>");
out.println("<td width=100>Title</td>");
out.println("<td width=100>Department</td>");
out.println("<td width=100>Credits</td>");
out.println("</tr>");
while(rs.next())
{
out.println("<tr>");
out.println("<td>"+rs.getString(1)+"</td>");
out.println("<td>"+rs.getString(2)+"</td>");
out.println("<td>"+rs.getString(3)+"</td>");
out.println("<td>"+rs.getString(4)+"</td>");
out.println("</tr>");
}
out.println("</table>");
dbConn.close();
} catch (Exception e) {
e.printStackTrace();
}
%>
</body>
</html>
最后还需要配置环境变量
将sqljdbc4.jar加入到classpath中。
具体方法如下(以win7为例)
计算机=>右键选择属性=>选择高级系统设置=>选择环境变量=>在classpath中添加sqljdbc4.jar的所在位置。
1]
下载安装SQL Server(本文以SQL Server 2012为例)
2]
下载Microsoft JDBC Driver for SQL Server
3]
下载并且安装集成开发环境 Eclipse IDE for Java EE Developers(可选)
准备用于查询的数据库和数据表
打开SQL Server Manage Studio打开SQL Server 2012
新建一个名为UniversityDB的数据库
新建一个名为course的表并且插入如下记录
在Eclipse中建立工程并且进行配置
打开Eclipse
新建一个Dynamic Web Project
命名为JDBCdemo
将之前下载的sqljdbc4.jar复制到WEB-INF/lib目录下。
如果WEB-INF目录下没有lib目录,就手动创建。
右键单击工程名,在弹出的菜单中选择Build Path
如果选择 add JARs
然后选中sqljdbc4.jar之后点确定。
在工程目录的WebContent目录下新建一个JSP文件
添加如下代码
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<%@ page import="java.sql.*" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Insert title here</title>
</head>
<body>
<%
Statement sql;
ResultSet rs;
String driverName = "com.microsoft.sqlserver.jdbc.SQLServerDriver"; //加载JDBC驱动
String dbURL = "jdbc:sqlserver://localhost:1433; DatabaseName=UniversityDB"; //连接服务器和数据库sample
String userName = "sa"; //默认用户名
String userPwd = "wkt19910602"; //密码
Connection dbConn;
try {
Class.forName(driverName);
dbConn = DriverManager.getConnection(dbURL, userName, userPwd);
sql=dbConn.createStatement();
rs=sql.executeQuery("select*from course");
System.out.println("Connection Successful!"); //如果连接成功 控制台输出Connection Successful!
out.println("<table Border>");
out.println("<tr><td colspan=8 align=center>用户数据</td></tr>");
out.println("<tr>");
out.println("<td width=100>CourseId</td>");
out.println("<td width=100>Title</td>");
out.println("<td width=100>Department</td>");
out.println("<td width=100>Credits</td>");
out.println("</tr>");
while(rs.next())
{
out.println("<tr>");
out.println("<td>"+rs.getString(1)+"</td>");
out.println("<td>"+rs.getString(2)+"</td>");
out.println("<td>"+rs.getString(3)+"</td>");
out.println("<td>"+rs.getString(4)+"</td>");
out.println("</tr>");
}
out.println("</table>");
dbConn.close();
} catch (Exception e) {
e.printStackTrace();
}
%>
</body>
</html>
最后还需要配置环境变量
将sqljdbc4.jar加入到classpath中。
具体方法如下(以win7为例)
计算机=>右键选择属性=>选择高级系统设置=>选择环境变量=>在classpath中添加sqljdbc4.jar的所在位置。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
Class.forName()
Properties Properties.getProperty()
DriverManager
PreparedStatement Statement
**链接数据库**
mySQL(oracle,myserver){
1.载入JDBC 驱动程序
Class.forName("com.mysql.jdbc.Driver"); [oracle.jdbc.driver.OracleDriver]
//导入jar包(com.mysql.jdbc.Driver)Driver.class路径
2.提供JDBC URL
String url="jdbc:mysql://192.168.1.106:3306/wj?user=root&password=123";
[jdbc:oracle:thin:@192.168.1.106:1521:orcl?user=sys as sysdba&password=a123]
//jdbc[协议]:数据库mysql://主机名称:端口/数据库名称?参数=值&参数=值
3.取得Connection
Connection con=DriverManager.getConnection(url);
}
properties {//一对一键值对 字符串
mysql: driver=com.mysql.jdbc.Driver
url=jdbc\:mysql\://192.168.1.106\:3306/wj?uesUnicode=true&characterEncoding=utf-8
user=root
password=123
oracle:driver=oracle.jdbc.driver.OracleDriver
url=jdbc\:oracle\:thin\:@192.168.1.106\:1521\:orcl
user=sys as sysdba
password=a123
}
代码 Properties p=new Properties();
File file =new File("./oracle.properties");//properties文件路径
FileInputStream f= new FileInputStream(file);
p.load(f);
Class.forName(p.getProperty("driver"));
Connection con=DriverManager.getConnection(p.getProperty("url"), p.getProperty("user"), p.getProperty("password"));
System.out.println(con);
***操作数据库***
Statement st=createStatement()//创建接口
String sql="delete from student where id=13";//写sql语句
[非查询]: st.executeUpdate(sql语句);(返回值 int) [非查询] //写入数据库
[查询]: st.executeQuery(sql语句);(返回值 查询集合图)[查询]
ResultSet rs= st.executeQuery(sql语句);
while(rs.next()){ System.out.println( rs.getInt(1)+"\t"+rs.getString(2));}
代码: (preparedStatement)
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.println("请输入用户名");
String mane =sc.next();
System.out.println("请输入密码");
String password=sc.next();
try {
Class.forName("com.mysql.jdbc.Driver");
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
try {
Connection con=DriverManager.getConnection ("jdbc:mysql://192.168.1.106:3306/wj", "root", "123");
String sql=" select * from login where loginname=? and loginpwd=?";
PreparedStatement ps= con.prepareStatement(sql);
ps.setString(1, mane); ps.setString(2, password);
ResultSet rs=ps.executeQuery();
if(rs.next()){
System.out.println("登陆成功");
}else{
System.out.println("登录失败");
}
} catch (SQLException e) {
e.printStackTrace();
}
}
批次处理:
executeBatch();
addBatch();
Properties Properties.getProperty()
DriverManager
PreparedStatement Statement
**链接数据库**
mySQL(oracle,myserver){
1.载入JDBC 驱动程序
Class.forName("com.mysql.jdbc.Driver"); [oracle.jdbc.driver.OracleDriver]
//导入jar包(com.mysql.jdbc.Driver)Driver.class路径
2.提供JDBC URL
String url="jdbc:mysql://192.168.1.106:3306/wj?user=root&password=123";
[jdbc:oracle:thin:@192.168.1.106:1521:orcl?user=sys as sysdba&password=a123]
//jdbc[协议]:数据库mysql://主机名称:端口/数据库名称?参数=值&参数=值
3.取得Connection
Connection con=DriverManager.getConnection(url);
}
properties {//一对一键值对 字符串
mysql: driver=com.mysql.jdbc.Driver
url=jdbc\:mysql\://192.168.1.106\:3306/wj?uesUnicode=true&characterEncoding=utf-8
user=root
password=123
oracle:driver=oracle.jdbc.driver.OracleDriver
url=jdbc\:oracle\:thin\:@192.168.1.106\:1521\:orcl
user=sys as sysdba
password=a123
}
代码 Properties p=new Properties();
File file =new File("./oracle.properties");//properties文件路径
FileInputStream f= new FileInputStream(file);
p.load(f);
Class.forName(p.getProperty("driver"));
Connection con=DriverManager.getConnection(p.getProperty("url"), p.getProperty("user"), p.getProperty("password"));
System.out.println(con);
***操作数据库***
Statement st=createStatement()//创建接口
String sql="delete from student where id=13";//写sql语句
[非查询]: st.executeUpdate(sql语句);(返回值 int) [非查询] //写入数据库
[查询]: st.executeQuery(sql语句);(返回值 查询集合图)[查询]
ResultSet rs= st.executeQuery(sql语句);
while(rs.next()){ System.out.println( rs.getInt(1)+"\t"+rs.getString(2));}
代码: (preparedStatement)
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.println("请输入用户名");
String mane =sc.next();
System.out.println("请输入密码");
String password=sc.next();
try {
Class.forName("com.mysql.jdbc.Driver");
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
try {
Connection con=DriverManager.getConnection ("jdbc:mysql://192.168.1.106:3306/wj", "root", "123");
String sql=" select * from login where loginname=? and loginpwd=?";
PreparedStatement ps= con.prepareStatement(sql);
ps.setString(1, mane); ps.setString(2, password);
ResultSet rs=ps.executeQuery();
if(rs.next()){
System.out.println("登陆成功");
}else{
System.out.println("登录失败");
}
} catch (SQLException e) {
e.printStackTrace();
}
}
批次处理:
executeBatch();
addBatch();
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
首先,需要知道的是JDBC仅仅是一个接口,通过JDBC去加载对应的驱动程序,进而来操作数据库。换句话说,JDBC需要依赖对应数据库的驱动程序才可以访问数据库。所以,在机器上安装了一个数据库后,应用程序是不能直接操作数据库的,只有安装了对应的驱动程序后,应用程序才可以通过驱动程序去操作数据库。
JDBC全称:
Java Data Base Connectivity(java数据库连接)
组成JDBC的2个包:
Java.sql和javax.sql
开发JDBC应用时除了需要以上2个包的支持外,还需要导入相应JDBC的数据库实现(即数据库驱动)
JDBC全称:
Java Data Base Connectivity(java数据库连接)
组成JDBC的2个包:
Java.sql和javax.sql
开发JDBC应用时除了需要以上2个包的支持外,还需要导入相应JDBC的数据库实现(即数据库驱动)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询