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();
}
}
转载于:https://www.cnblogs.com/daochong/p/4827487.html
jdbc至sql server的两种常见方法相关推荐
- 使用定制的NSDictionary的方法,对NSArray进行排序(附:数组排序两种常见方法)
NSArray中存放的是NSDictionary,可以使用策略的方法对NSDictionary进行定制,增加比较的方法.然后调用NSArray的sortUsingSelector方法对数组进行排序,这 ...
- CSS初始化的两种常见方法
CSS初始化的两种常见方法 两种CSS初始化的常见方案,都是通用类的 CSS reset Eric Meyer写的 CSS reset,源码不是很长: /* http://meyerweb.com/e ...
- 十六进制的转换为十进制两种常见方法
十六进制的转换为十进制两种常见方法 好久以前学的都忘了,正好复习一下 对于十六进制转十进制 第一种:快速法(自己挺喜欢第一种的快捷) 比如: 012A=0 X 163 + 1 X 162+ 2 X 1 ...
- python与sql连接不上_Python连接不上SQL Server的两种根治思路
连接不上数据库,首先可以排除是代码的问题,连接方式都是千篇一律的. 大多数问题都是本机的两个原因造成的,1.服务没有开启,2.没有启动SQL配置的TCP/IP 下面给出统一解决方案: 首先从开始菜单找 ...
- vue中this.$router.push()路由传值和获取的两种常见方法
我们在做项目时 ,经常会遇到路由跳转页面传值的问题,有的路由跳转到导航页面时 导航的样式也就改变了. 命名的路由(通过params) this.$router.push({name: "路径 ...
- Java/JSP中使用JDBC连接SQL Server 2005(转自 秋忆)
接触Java或者JSP,难免会使用到数据库SQL Server 2000/2005(我使用2005标准版[9.0.3054]测试),经过自己的搜索和研究,使用JDBC连接SQL Server成功,特此 ...
- JDBC连接sql server数据库及其它
JDBC连接sql server数据库的步骤如下: 1.加载JDBC驱动程序: 在连接数据库之前,首先要加载想要连接的数据库的驱动到JVM(Java虚拟机), 这通过java.lang.Class类的 ...
- SQL Server连接中的常见错误
SQL Server连接中的常见错误: 一."SQL Server 不存在或访问被拒绝" 这个是最复杂的,错误发生的原因比较多,需要检查的方面也比较多. 一般说来,有以下几种可能性 ...
- SQL SERVER 内存分配及常见内存问题(1)——简介
原文:SQL SERVER 内存分配及常见内存问题(1)--简介 一.问题: 1.SQL Server 所占用内存数量从启动以后就不断地增加: 首先,作为成熟的产品,内存溢出的机会微乎其微.对此要了解 ...
最新文章
- AKAP95 regulates splicing through scaffolding RNAs and RNA processing factoAKAP95通过支架RNA和RNA加工因子调控剪接
- HD 2044 一只小蜜蜂(递推)
- web farm 讨论引出
- matlab cell
- 用代码玩剧本杀?第3届83行代码大赛剧情官方解析
- python调用rocketmq的api_rocketmq-python
- 一套代码两端运行不靠谱?是时候放弃 C++ 跨 Android、iOS 端开发!
- oracle手动 建库_Oracle Create the Database for 11g(手动创建数据库)
- latex 左对齐_LaTeX从入门到提高(3)
- linux下免密认证登录失败原因总结
- mv单位是什么意思_mv单位(mv是什么意思单位)
- 2021年AR/VR创企融资39亿美元创纪录 元宇宙成为推手
- eye-in-hand手眼标定系统
- ios 配置了代理且使用 chls.pro/ssl 下载不了证书,无法弹出下载证书的提示
- 自动化成本高?那么如何获得最高的投资回报呢?
- 电梯控制技术综合实训装置QY-DT721
- Python 实现excel 分类汇总、批量数据替换
- 手把手教你设置路由器端口映射
- 洛谷P1018乘积最大题解--zhengjun
- Martin Fowler先生关于持续集成的一篇文章