详解连接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 ...
随机推荐
- 从SonarQube谈设计模式
SonarQube SonarQube是用来检测代码质量的,但类似工具的推广常常遇到阻碍. 成型项目或僵尸项目可以理解,项目优化需要投入的人力成本和时间成本太大,而且最主要的是无法保证改动过程中不引入 ...
- Java中设计模式之生产者消费者模式-4
引言 生产者-消费者(producer-consumer)问题,也称作有界缓冲区(bounded-buffer)问题,两个进程共享一个公共的固定大小的缓冲区.其中一个是生产者,用于将消息放入缓冲区:另 ...
- 基于angular的route实现单页面cnodejs
Angular ui-router 前言 之前不太理解前端怎么实现路由功能,以前知道有一种方式使用html5的pushState可以操作url才实现路由的功能,在实践项目中也用过一次,后来这种操作叫成 ...
- colinux
Colinux是什么?2004年,由一名21岁的以色列学生与几名日本的自由程序员合作开发出了一个名为“Cooperative Linux”即“CoLinux”的Linux程序,该程 序可使Linux的 ...
- php 数据连接 基础
1.造连接对象 $db= new MYSQLi("localhost","root","123","test_0306" ...
- C++判断一个数字是否为质数
关于素数的算法是程序竞赛比较重要的数论知识,我们来看通常会使用的几个算法. 我们先来复习几个基本概念: 质数:对于大于1的自然数,若除了1和它本身,没有别的因数,则称这个数为质数,质数也叫素数.反之, ...
- 【转载】Static 关键字的作用
原始日期:2016-07-16 17:53 一 普通的static关键字 1. 静态全局变量 在全局变量前,加上关键字static,该变量就被定义成为一个静态全局变量.我们先举一个静态全局变 ...
- JVM中class文件探索与解析(一)
一直想成为一名优秀的架构师的我,转眼已经工作快两年了,对于java内核了解甚少,闲来时间,看看JVM,吧自己的一些研究写下来供大家参考,有不对的地方请指正. 废话不多说,一起来看看JVM中类文件是如何 ...
- 前端程序员的蜕变——JS的 event 对象属性、使用实例、兼容性处理(极大提高代码效率、减少代码量)
下面讨论一下 js 中的 Event 对象,主要从以下三个方面详细的描述(点击标题可跳转到对应部分): 1.什么是event 2.怎么用event,用他该注意什么,几个简单实际应用 3.event在不 ...
- javaScript高级程序设计笔记 1
核心 ECMAScript 文档对象模型 DOM 浏览器对象模型 BOM 延迟脚本 defer typeof操作符 判断字符类型 返回 undefined boolean s ...