详解连接SQL Server数据库的方法,并使用Statement接口实现对数据库的增删改操作
总结一下,连接SQL Server数据库需要以下几个步骤:
1. 导入驱动Jar包:sqljdbc.jar
2. 加载并注册驱动程序
3. 设置连接路径
4. 加载并注册驱动
5. 连接数据库
6. 操作数据库
7. 关闭连接
代码如下:
******************连接数据库*******************
package zj6_Test;
import java.sql.*;
public class Zj6_3 {
/**
* 使用Statement接口实现对数据库的增删改操作
*/
private static final String driver=
"com.microsoft.sqlserver.jdbc.SQLServerDriver";//加载并注册驱动程序
private static final String url=
"jdbc:sqlserver://localhost:1433;DataBaseName=Bank";//设置连接路径
public static void main(String[] args) {
Connection con=null;//建立连接池
Statement sta=null;
try {
Class.forName(driver);//加载并注册驱动
con=DriverManager.getConnection(url, "sa", "sa");//连接数据库
// 向数据库Bank表中添加数据
sta=con.createStatement();//通过createStatement()方法得到Statement接口的引用指向的对象
sta.execute("insert into ACCOUNT values('曹操','420106198205188777','2011-07-07')");
sta.close(); //关闭Ststement对象
// //修改表中ACCOUNT_ID为7的数据
// String ACCOUNT_NAME="曹植";
// String CODE="420683199203212111";
// String OPEN_TIME="2011-07-10";
// sta=con.createStatement();
// String updatesql="update ACCOUNT set ACCOUNT_NAME='"+ACCOUNT_NAME+"',CODE='"+CODE+"',OPEN_TIME='"+OPEN_TIME+"'where ACCOUNT_ID="+7 ;
//
// sta.execute(updatesql);
// sta.close();
// //删除ACCOUNT表中ACCOUNT_ID=7的记录
// sta=con.createStatement();
// String delsql="delete from ACCOUNT where ACCOUNT_ID="+7;
// sta.executeUpdate(delsql);
// sta.close();
// con.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
运行结果:

当然,实际应用中,为了体现java封装的特性,往往会把重复使用的方法封装到一个类中,每次直接拿来用就可以了。
下面给一个封装的类:
package zj6_Test;
import java.sql.*;
public class DBManager {
/**
* 建立专门的自定义类,来实现建立连接、关闭对象和关闭连接
*/
private static final String driver=
"com.microsoft.sqlserver.jdbc.SQLServerDriver";
private static final String url=
"jdbc:sqlserver://localhost:1433;DataBaseName=Bank";
private static final String user="sa";
private static final String pwd="sa";
private static Connection con=null;//建立连接池对象
//建立与数据库的连接
public static Connection getCon(){
try {
Class.forName(driver);
con=DriverManager.getConnection(url,user,pwd);
} catch (Exception e) { e.printStackTrace();
}
return con;
}
//关闭Connection
public static void closeCon(Connection con){
try {
if(con!=null){
con.close();
}
} catch (SQLException e) {
e.printStackTrace();
}
}
//关闭ResultSet
public static void closeResultSet(ResultSet rst){
try {
if(rst!=null){
rst.close();
rst=null;
}
} catch (Exception e) {
e.printStackTrace();
}
}
//关闭Statement
public static void closeStatement(PreparedStatement pst){
try {
if(pst!=null){
pst.close();
pst=null;
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
能力有限,有些地方地方说法不够专业,还望批评指正!
详解连接SQL Server数据库的方法,并使用Statement接口实现对数据库的增删改操作的更多相关文章
- 使用自定义端口连接SQL Server 2008的方法
版权声明:本文为博主原创文章,未经博主允许不得转载. 使用过SQL Server的人大多都知道,SQL Server服务器默认监听的端口号是1433,但是我今天遇到的问题是我的机器上有三个数据库实例, ...
- SQL SERVER 数据类型详解(SQL Server 2008)
数据类型类别 SQL Server 中的数据类型归纳为下列类别: 数字类型 1.精确数字 2.近似数字 3.日期和时间 字符串类型 4.非Unicode字符串 4.Unicode字符串 5.二进制字符 ...
- asp.net连接SQL SERVER 2012的方法
在web.config文件中添加 <connectionStrings> <add name="SQLConnectionString" connectionSt ...
- Ubuntu下erlang连接SQL SERVER 2008
erlang连接SQL Server使用ODBC方法,但在网络上还是缺少资料,自己折腾了2天才成功.现在特记录下来,以供大家借鉴. 基本思路是 erlang odbcserver + unixodbc ...
- 远程连接sql server 数据库的方法
今天找了半天,终于解决了如何从本地连接到远程sql server服务器的方法. 1.首先确保打开远程服务器的sql server配置管理器,确保TCP/IP协议开启 2.WebConfig的连接字符格 ...
- JDBC连接SQL Server 2005步骤详解
一.设置SQL Server服务器: 1.“开始” → “程序” → “Microsoft SQL Server 2005” → “配置工具” → “SQL Server Configurati ...
- Windows 2008服务器环境PHP连接SQL Server数据库的配置及连接方法
背景: PHP程序常用的数据库是Mysql数据库,但是由于实际项目需要,要求PHP网站连接SQL Server数据库查询一些必要信息.因此,本文就来给大家介绍一下如何安装及配置PHP扩展,可以实现PH ...
- php连接sql server 2008数据库
原文:php连接sql server 2008数据库 关于php连接sql server 2008的问题,2000的版本可以直接通过php中的配置文件修改,2005以上的版本就不行了,需要使用微软公司 ...
- Java连接Sql Server 2008的简单数据库应用
1.从微软官网下载JDBC驱动包 sqljdbc_4.0.2206.100_chs.exe,双击解压文件到指定目录,我的指定目录是: C:\Program Files\Microsoft JDBC D ...
随机推荐
- 使用ThreadLocal实现的读写分离在迁移后的偶发错误
最近莫名的会有错误日志,说有写操作因为走了读库而报了read only的异常,由于并没有造成应用使用的问题,开始我以为哪的配置错误就没当回事让程序员自己去查了,然而... 背景:之前的博客里提到过,读 ...
- koa-router中路由/后面不填参数就会报404的解决办法
koa-router 中使用路由参数时会遇到一个问题,就是像下面的代码在没有传入 id 是会报 404 错误 router.get('/:id', (err, ctx, next) => { / ...
- glmnetUtils: quality of life enhancements for elastic net regression with glmnet
The glmnetUtils package provides a collection of tools to streamline the process of fitting elastic ...
- openfire muc 移除成员
muc添加成员到数据库可参考 将Openfire中的MUC改造成类似QQ群一样的永久群 插件 插件是一位大神参考第一篇文章改进后编写的插件,进测试可以直接使用. ------------------- ...
- crontab表达式执行时间计算,crontab在线测试
熟悉Unix和Linux的朋友都知道Crontab表达式,通过crontab指令可以周期性调用或执行某个程序. 但是大家写完crontab表达式后,心里总是担心表达式写的不对,可以又没法去验证.比 ...
- Java中的向上造型和向下造型等
package com.study.oop.day01; /** * 如果某个方法是静态 的,它的行为就不具有多态性 * @author LuHongGang * @date 2017年6月5日 ...
- hdu 5975---Aninteresting game(树状数组)
题目链接 Problem Description Let’s play a game.We add numbers 1,2...n in increasing order from 1 and put ...
- java基础(六章)
一.for循环的使用场合 l while循环--先判断,再循环 while(1.条件表达式){ //2.循环操作 //3.更改循环条件表达式 } l do-while--先循环 ...
- mysql之 mysql 5.6不停机主从搭建(一主一从基于GTID复制)
环境说明:版本 version 5.6.25-log 主库ip: 10.219.24.25从库ip:10.219.24.22os 版本: centos 6.7已安装热备软件:xtrabackup 防火 ...
- ue4打包问题的巧妙解决——二分回退大法!
昨天突然发生了一件非常恐怖的事--我的ue4项目居然不能打包了!! 大概是这么一回事: UATHelper: 打包 (Windows (64位)): UnrealBuildTool: ERROR: ...