jdbc至sql server的两种常见方法
Statement和prepareStatement
sql server中已建立BookPhone数据库,包含bookPhone表,eclipse中有BookPhone类,三个string类型的值
1.
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
public class jdbcDemo01 {
private final static String URL = "jdbc:sqlserver://127.0.0.1:1433;databasename=BookPhone";
private final static String user = "sa";
private final static String password = "123456";
static void insert(PhoneBook pb){
Connection conn=null;
PreparedStatement ps=null;
try{
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
conn = DriverManager.getConnection(URL, user, password);
String sqlString="insert into bookPhone(ph_name,ph_sex,ph_age) values(?,?,?)";
ps=conn.prepareStatement(sqlString);
ps.setString(1,pb.getName());
ps.setString(2,pb.getSex());
ps.setString(3,pb.getAge());
ps.executeUpdate();
ps.close();
conn.close();
}catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}catch(ClassNotFoundException e){
e.printStackTrace();
}
}
static void update(PhoneBook pb,String oldname){
Connection conn=null;
PreparedStatement ps=null;
try{
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
conn = DriverManager.getConnection(URL, user, password);
String sqlString="update bookPhone set ph_name=?,ph_sex=?,ph_age=? where ph_name=?";
ps=conn.prepareStatement(sqlString);
ps.setString(1,pb.getName());
ps.setString(2,pb.getSex());
ps.setString(3,pb.getAge());
ps.setString(4,oldname);
ps.executeUpdate();
ps.close();
conn.close();
}catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}catch(ClassNotFoundException e){
e.printStackTrace();
}
}
static void delete(String name){
Connection conn=null;
PreparedStatement ps=null;
try{
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
conn = DriverManager.getConnection(URL, user, password);
String sqlString="delete bookPhone where ph_name=?";
ps=conn.prepareStatement(sqlString);
ps.setString(1,name);
ps.executeUpdate();
ps.close();
conn.close();
}catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}catch(ClassNotFoundException e){
e.printStackTrace();
}
}
static PhoneBook requestByName(String name){
Connection conn=null;
PreparedStatement ps=null;
PhoneBook pb=null;
try{
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
conn = DriverManager.getConnection(URL, user, password);
String sqlString="select * from bookPhone where ph_name=?";
ps=conn.prepareStatement(sqlString);
ps.setString(1,name);
ResultSet rs=ps.executeQuery();
while(rs.next()){
pb=new PhoneBook();
pb.setName(rs.getString(1));
pb.setSex(rs.getString(2));
pb.setAge(rs.getString(3));
System.out.print(rs.getString(2)+",");
System.out.print(rs.getString(3));
}
rs.close();
ps.close();
conn.close();
}catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}catch(ClassNotFoundException e){
e.printStackTrace();
}
return pb;
}
public static void main(String[] args) {
PhoneBook pb1=new PhoneBook("王大毛","男","14");
PhoneBook pb2=new PhoneBook("王小毛","男","14");
insert(pb1);
System.out.println(requestByName("王大毛"));
delete("王大毛");
}
}
2.
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class JdbcDemo {
private final static String URL="jdbc:sqlserver://localhost:1433;database=BookPhone";
private final static String user="sa";
private final static String password="123456";
static void insert(){
String name="李狗蛋";
String sex="男";
String age="12";
try{
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
Connection conn=DriverManager.getConnection(URL,user,password);
String sqlString="insert into bookPhone(ph_name,ph_sex,ph_age)"
+"values("+"'"+name+"','"+sex+"','"+age+"')";
Statement stmt=conn.createStatement();
stmt.executeUpdate(sqlString);
stmt.close();
conn.close();
}catch(ClassNotFoundException e){
e.printStackTrace();
}catch(SQLException e){
e.printStackTrace();
}
}
static void update(PhoneBook pb,String oldName){
String name=pb.getName();
String sex=pb.getSex();
String age=pb.getAge();
try{
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
Connection conn=DriverManager.getConnection(URL,user,password);
String sqlString="update bookPhone set ph_name='"+name+"',ph_sex='"+sex+"',ph_age='"+age+"' where ph_name='"+oldName+"'";
Statement stmt=conn.createStatement();
stmt.executeUpdate(sqlString);
stmt.close();
conn.close();
}catch(ClassNotFoundException e){
e.printStackTrace();
}catch(SQLException e){
e.printStackTrace();
}
}
static void delete(String name){
try{
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
Connection conn=DriverManager.getConnection(URL,user,password);
String sqlString="delete bookPhone where ph_name='"+name+"'";
Statement stmt=conn.createStatement();
stmt.executeUpdate(sqlString);
stmt.close();
conn.close();
}catch(ClassNotFoundException e){
e.printStackTrace();
}catch(SQLException e){
e.printStackTrace();
}
}
static void request(){
try{
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
Connection conn=DriverManager.getConnection(URL,user,password);
String sqlString="select * from bookPhone";
Statement stmt=conn.createStatement();
ResultSet rs=stmt.executeQuery(sqlString);
while(rs.next()){
System.out.print(rs.getString(1)+",");
System.out.print(rs.getString(2)+",");
System.out.println(rs.getString(3));
}
System.out.println();
stmt.close();
conn.close();
}catch(ClassNotFoundException e){
e.printStackTrace();
}catch(SQLException e){
e.printStackTrace();
}
}
public static void main(String[] args) {
PhoneBook pb=new PhoneBook("李小狗蛋","男","12");
insert();
update(pb,"李狗蛋");
delete("barry55");
request();
}
}
jdbc至sql server的两种常见方法的更多相关文章
- jQuery ajax调用后台aspx后台文件的两种常见方法(不是ashx)
在asp.net webForm开发中,用Jquery ajax调用aspx页面的方法常用的有两种:下面我来简单介绍一下. [WebMethod] public static string SayHe ...
- 重启sql server服务两种方式
1.第一种重启SQl server的方法 点击左侧的数据库重启 如图 右击有个重启操作 2.第二个重启sql server方法
- Python连接不上SQL Server的两种根治思路
连接不上数据库,首先可以排除是代码的问题,连接方式都是千篇一律的. 大多数问题都是本机的两个原因造成的,1.服务没有开启,2.没有启动SQL配置的TCP/IP 下面给出统一解决方案: 首先从开始菜单找 ...
- JDBC与SQL SERVER各个版本的连接方法
转至:blog.csdn.net/ying5420/article/details/4488246 1.SQL SERVER 2000 JDBC驱动程序:msbase.jar.mssqlserver. ...
- vue中this.$router.push()路由传值和获取的两种常见方法
1.路由传值 this.$router.push() (1) 路由跳转使用router.push()方法,这个方法会向history栈添加一个新纪录,所以,当用户点击浏览器后退按钮时,会回到之前的 ...
- SQL Server 中几种常见的约束关系
1.创建唯一约束 当表中已创建主键,但又要保证其他数据列的值唯一时,可以使用唯一约束,并且唯一约束允许NULL值(只有一个) (1)展开指定的数据库: (2)右击要创建唯一约束的表,在弹出的快捷菜单中 ...
- html笔记04:在html之中导入css两种常见方法
1.导入式: <html> <head> <title></title> <style type="text/css"> ...
- c# 导出excel的两种常见方法
1,不是用第三方插件(html直接输出) StringBuilder ssb = new StringBuilder(); StringBuilder sb = new StringBuilder() ...
- 使用JDBC连接SQL Server
源文:http://bbs.bc-cn.net/dispbbs.asp?boardid=12&id=140292 整理:秋忆 接触Java或者JSP,难免会使用到数据库SQL Server 2 ...
随机推荐
- [Solution] AOP原理解析及Castle、Autofac、Unity框架使用
本节目录: AOP介绍 AOP基本原理 AOP框架 Castle Core Castle Windsor Autofac Unity AOP介绍 面向切面编程(Aspect Oriented Prog ...
- JS 函数--Date()函数
1.JavaScript没有基本的日期数据类型,所以只能显式的创建Date对象.例如:var myDate=new Date(); 2.为了创建一个存储了特定日期的,或者时间的Date对象,可以简单的 ...
- 扩展KMP --- HDU 3613 Best Reward
Best Reward Problem's Link: http://acm.hdu.edu.cn/showproblem.php?pid=3613 Mean: 给你一个字符串,每个字符都有一个权 ...
- Oracle工程建设行业解决方案
为何选择Oracle工程建设行业解决方案? Oracle为工程建设企业提供一套全面.开放且集成的业务管理软件.服务器和存储解决方案.这些解决方案经过集成设计,能够实现卓越性能,从而优化业务的方方面面. ...
- C#设计模式——代理模式(Proxy Pattern)
一.概述在软件开发中,有些对象由于创建成本高.访问时需要与其它进程交互等原因,直接访问会造成系统速度慢.复杂度增大等问题.这时可以使用代理模式,给系统增加一层间接层,通过间接层访问对象,从而达到隐藏系 ...
- WdatePicker.js的使用方法
WdatePicker.js的使用方法 摘自:http://www.cnblogs.com/wuchao/archive/2012/07/19/2599209.html 4. 日期范围限制 静态限制 ...
- 重新想象 Windows 8 Store Apps (48) - 多线程之其他辅助类: SpinWait, SpinLock, Volatile, SynchronizationContext, CoreDispatcher, ThreadLocal, ThreadStaticAttribute
[源码下载] 重新想象 Windows 8 Store Apps (48) - 多线程之其他辅助类: SpinWait, SpinLock, Volatile, SynchronizationCont ...
- PHPWind 8.7中代码结构与程序执行顺序
pw9在此不谈,他是完全重构的作品,是完全MVC下的体系.当然,其中很多东西在PW8.7下已经可见端倪. 主要代码结构 1. 以现代的观点,PW是多入口应用模式,程序根目录下的文件几乎都是入口: 2. ...
- [zz] JIT&HotSpot
zz from 百度百科 最早的Java建置方案是由一套转译程式(interpreter),将每个Java指令都转译成对等的微处理器指令,并根据转译后的指令先后次序依序执行,由于一个Java指令可能被 ...
- C# Out 传值
public void Out(out int a, out int b) {//out相当于return返回值 //可以返回多个值 //拿过来变量名的时候,里面默认为空值 a=1; b=2; } s ...