JDBC是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组Java语言编写的类和接口组成,是编程语言连接数据库的标准语言。
jdbc驱动的分类
Ⅰ.jdbc-odbc桥连接
Ⅱ.本地协议纯java驱动程序
Ⅲ.网络协议纯java驱动程序
Ⅳ.本地api
查询数据
1 /** 2 * 作者:白客C 3 * 时间:2020年03月16日 4 * JDBC驱动方式操作数据库 5 *需要引入jar包 6 */ 7 package com.beekc.www; 8 import java.sql.*; 9 10 public class Jdbo { 11 public static void main(String[] args) { 12 13 //定义需要的对象 14 PreparedStatement ps = null; 15 Connection ct = null; 16 ResultSet rs = null; 17 18 try{ 19 //1.加载驱动 20 Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); 21 //2.得到连接 22 ct = DriverManager.getConnection("jdbc:sqlserver://localhost:1433;databaseName=beekc","sa","admin.."); 23 //3.创建介质方式 24 ps = ct.prepareStatement("select * from stu"); 25 //4.执行[增加,删除,修改用executeUpdate(),如果是查询用executeQuery()] 26 rs = ps.executeQuery(); 27 28 //循环取出 29 while (rs.next()) 30 { 31 String str1 = rs.getString("sno"); 32 String str2 = rs.getString(2); 33 String str3 = rs.getString(3); 34 System.out.println("学号:" + str1+ " 名字:" + str2 + " 地址:" + str3); 35 } 36 37 }catch (Exception e){ 38 e.printStackTrace(); 39 }finally { 40 try{ 41 if(rs != null) 42 { 43 rs.close(); 44 } 45 if(ps != null) 46 { 47 ps.close(); 48 } 49 if(ct != null) 50 { 51 ct.close(); 52 } 53 }catch (Exception e){ 54 e.printStackTrace(); 55 } 56 } 57 } 58 }
增加数据
1 /** 2 * 作者:白客C 3 * 时间:2020年03月16日 4 * JDBC驱动方式操作数据库 5 *需要引入jar包 6 */ 7 package com.beekc.www; 8 import java.sql.*; 9 10 public class Jdbo { 11 public static void main(String[] args) { 12 13 //定义需要的对象 14 Connection ct = null; 15 PreparedStatement ps = null; 16 try{ 17 //1.加载驱动 18 Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); 19 //2.得到连接 20 ct = DriverManager.getConnection("jdbc:sqlserver://127.0.0.1:1433;databaseName=beekc","sa","admin.."); 21 //3.创建介质方式[添加] 22 ps = ct.prepareStatement("insert into stu values (?,?,?)"); 23 //给问号赋值 24 ps.setString(1,"000013"); 25 ps.setString(2,"吴用"); 26 ps.setString(3,"三国"); 27 28 //4.执行[添加]executeUpdate()执行成功放回1,失败返回0 29 int i = ps.executeUpdate(); 30 31 if(i == 1) 32 { 33 System.out.println("添加一条信息成功"); 34 }else { 35 System.out.println("添加一条信息失败"); 36 } 37 38 39 }catch (Exception e){ 40 e.printStackTrace(); 41 }finally { 42 try{ 43 if( ps != null) 44 { 45 ps.close(); 46 } 47 if(ct != null) 48 { 49 ct.close(); 50 } 51 }catch (Exception e){ 52 e.printStackTrace(); 53 } 54 } 55 56 } 57 }
删除数据
1 //3.创建介质方式[添加] 2 ps = ct.prepareStatement("delete from stu where sno=000013"); 3 4 //4.执行 5 int i = ps.executeUpdate(); 6 7 if(i == 1) 8 { 9 System.out.println("删除成功"); 10 }else { 11 System.out.println("删除失败"); 12 }
修改数据
1 //3.创建介质方式[添加] 2 ps = ct.prepareStatement("update stu set address = '赵国' where sno = '000012'" ); 3 4 //4.执行 5 int i = ps.executeUpdate(); 6 7 if(i == 1) 8 { 9 System.out.println("修改成功"); 10 }else { 11 System.out.println("修改失败"); 12 }
创建数据库
1 /** 2 * 作者:白客C 3 * 时间:2020年03月16日 4 * JDBC驱动方式操作数据库 5 *需要引入jar包 6 */ 7 package com.beekc.www; 8 import java.sql.*; 9 10 public class Jdbo { 11 public static void main(String[] args) { 12 13 //定义需要的对象 14 Connection ct = null; 15 PreparedStatement ps = null; 16 try{ 17 //1.加载驱动 18 Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); 19 //2.得到连接 20 ct = DriverManager.getConnection("jdbc:sqlserver://127.0.0.1:1433;databaseName=beekc","sa","admin.."); 21 //3.创建介质方式[添加] 22 ps = ct.prepareStatement("create database beekc"); 23 24 //4.如果执行是ddl语句用 25 boolean b = ps.execute(); 26 if(!b) 27 { 28 System.out.println("创建成功"); 29 } 30 }catch (Exception e){ 31 e.printStackTrace(); 32 }finally { 33 try{ 34 if( ps != null) 35 { 36 ps.close(); 37 } 38 if(ct != null) 39 { 40 ct.close(); 41 } 42 }catch (Exception e){ 43 e.printStackTrace(); 44 } 45 } 46 47 } 48 }
创建表
1 /** 2 * 作者:白客C 3 * 时间:2020年03月16日 4 * JDBC驱动方式操作数据库 5 *需要引入jar包 6 */ 7 package com.beekc.www; 8 import java.sql.*; 9 10 public class Jdbo { 11 public static void main(String[] args) { 12 13 //定义需要的对象 14 Connection ct = null; 15 PreparedStatement ps = null; 16 try{ 17 //1.加载驱动 18 Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); 19 //2.得到连接 20 ct = DriverManager.getConnection("jdbc:sqlserver://127.0.0.1:1433;databaseName=beekc","sa","admin.."); 21 //3.创建介质方式[添加] 22 ps = ct.prepareStatement("create table xxx(aa int, bb varchar(50) )"); 23 24 //4.如果执行是ddl语句用 25 boolean b = ps.execute(); 26 if(b) 27 { 28 System.out.println("创建成功"); 29 }else { 30 System.out.println("创建失败"); 31 } 32 }catch (Exception e){ 33 e.printStackTrace(); 34 }finally { 35 try{ 36 if( ps != null) 37 { 38 ps.close(); 39 } 40 if(ct != null) 41 { 42 ct.close(); 43 } 44 }catch (Exception e){ 45 e.printStackTrace(); 46 } 47 } 48 49 } 50 }
备份数据库
1 /** 2 * 作者:白客C 3 * 时间:2020年03月16日 4 * JDBC驱动方式操作数据库 5 *需要引入jar包 6 */ 7 package com.beekc.www; 8 import java.sql.*; 9 10 public class Jdbo { 11 public static void main(String[] args) { 12 13 //定义需要的对象 14 Connection ct = null; 15 PreparedStatement ps = null; 16 try{ 17 //1.加载驱动 18 Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); 19 //2.得到连接 20 ct = DriverManager.getConnection("jdbc:sqlserver://127.0.0.1:1433;databaseName=beekc","sa","admin.."); 21 //3.创建介质方式[添加] 22 ps = ct.prepareStatement("backup database beekc to disk = 'd:/beekc.bak' "); 23 24 //4.如果执行是ddl语句用 25 boolean b = ps.execute(); 26 if(!b) 27 { 28 System.out.println("备份成功"); 29 }else { 30 System.out.println("备份失败"); 31 } 32 }catch (Exception e){ 33 e.printStackTrace(); 34 }finally { 35 try{ 36 if( ps != null) 37 { 38 ps.close(); 39 } 40 if(ct != null) 41 { 42 ct.close(); 43 } 44 }catch (Exception e){ 45 e.printStackTrace(); 46 } 47 } 48 49 } 50 }