第十七章内容

例题代码

package 案例;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;

import com.mysql.cj.jdbc.Driver;

public class JDBCDemo {
	Connection connection;
	private int id;
	private String name;
	
		public static void main(String[] args) throws SQLException {
			//实例化对象
		JDBCDemo jdbc = new JDBCDemo();
		//使用驱动
		jdbc.DriverManager();
		//查询表中数据
//		System.out.println("查询所有课程:结果为:");
		jdbc.Statement();
//		System.out.println("添加4号课程:名为wed");
//		//添加数据
//		jdbc.add(4,"web");
//		jdbc.Statement();
//		System.out.println("修改3号课程,改为PS");
//		//修改数据
//		jdbc.Update(3,"PS");
//		jdbc.Statement();
//		System.out.println("删除4号课程,结果为:");
//		//删除数据
//		jdbc.delete(4);
//		jdbc.Statement();
		jdbc.close();
	}
		//删除数据
		private void delete(int id) throws SQLException {
			PreparedStatement preparedStatement =
					connection.prepareStatement("delete from couse where id = ?");
			preparedStatement.setInt(1, id);
			//执行Sql语句
			preparedStatement.executeUpdate();
		}

		//修改数据
		private void Update(int id, String name) throws SQLException {
			PreparedStatement preparedStatement = 
					connection.prepareStatement("update couse set name = ? where id = ?;");
			preparedStatement.setString(1, name);
			preparedStatement.setInt(2, id);
			//执行Sql语句
			preparedStatement.executeUpdate();
		}

		//添加数据
	public void add(int id, String name) throws SQLException {
		//第三步:获取statement对象
		PreparedStatement preparedStatement = 
				connection.prepareStatement("insert into couse values(?,?);");
		preparedStatement.setInt(1, id);
		preparedStatement.setString(2, name);
		//第四步: 执行SQL语句返回结果集	
		preparedStatement.executeUpdate();//executeUpdate只要修改数据就用,不管是增删改
		}

	//注册驱动 获取连接
	public void DriverManager() throws SQLException {
		//第一步:注册驱动		DriverManagere驱动
		DriverManager.registerDriver(new Driver());
		//第二步:获取连接
		connection = DriverManager.getConnection
				("jdbc:mysql://localhost:3306/school_java","root","1234");		//1234密码
		//localhost:本地主机		3306:数据库端口号		school_java:具体数据库名字	root:用户名
	}
	
	//获取couse表中的所有数据
	public void Statement() throws SQLException {
		//第三步:获取statement对象
		PreparedStatement preparedStatement = 
				connection.prepareStatement("select * from couse;");//MySQL语句
		//第四步: 执行SQL语句返回结果集
	 	ResultSet resultset = preparedStatement.executeQuery();//executeQuery只有查询用
	 	//集合存储
	 	
	 	//第五步:遍历结果集
	 	while(resultset.next()) {
	 		//next:判断是否有下一条数据
	 		System.out.print(resultset.getInt("id") + " ");
	 									//数据库里什么字段,get方法就填什么类型
	 		System.out.println(resultset.getString("name"));
	 	}
	 	//第六步:关闭连接释放资源
	 	resultset.close();
	 	preparedStatement.close();
	}
	
	//关闭连接
	public void close() throws SQLException {
		connection.close();
	}
	
}
package 案例;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;

import com.mysql.cj.jdbc.Driver;
/*
 未分装
 */

public class JDBCDome2 {

	public static void main(String[] args) throws SQLException {
		// TODO Auto-generated method stub
//		连接数据库步骤		
//		第一步:注册驱动		DriverManagere驱动
		DriverManager.registerDriver(new Driver());
//		第二步:获取连接
		Connection connection = DriverManager.getConnection
				("jdbc:mysql://localhost:3306/school_java","root","1234");		//1234密码
		//localhost:本地主机		3306:数据库端口号		school_java:具体数据库名字	root:用户名
		
//		第三步:获取statement对象
		PreparedStatement preparedStatement = 
				connection.prepareStatement("select * from couse;");//MySQL语句
//		第四步: 执行SQL语句返回结果集
	 	ResultSet resultset = preparedStatement.executeQuery();
	 	//集合存储
	 	
//		第五步:遍历结果集
	 	while(resultset.next()) {
	 		//next:判断是否有下一条数据
	 		System.out.println(resultset.getInt("id"));
	 									//数据库里什么字段,get方法就填什么类型
	 		System.out.println(resultset.getString("name"));
	 	}
//		第六步:关闭连接释放资源
	 	resultset.close();
	 	preparedStatement.close();
	 	connection.close();
	}

}
package 案例;

import java.sql.Connection;

import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;

import com.mysql.cj.jdbc.Driver;
import java.util.Scanner;
public class 数据库 {
	
	Connection connection;
	public int id;
	public String name;
	public String tel;
	public String sex;
	
	//注册驱动 获取连接
		public void DriverManager() throws SQLException {
			//第一步:注册驱动		DriverManagere驱动
			DriverManager.registerDriver(new Driver());
			//第二步:获取连接
			connection = DriverManager.getConnection
					("jdbc:mysql://localhost:3306/school_java","root","1234");		//1234密码
			//localhost:本地主机		3306:数据库端口号		school_java:具体数据库名字	root:用户名
		}
		
		//添加数据
		public void add(int id, String name, String tel, String sex) throws SQLException {
			//第三步:获取statement对象
			PreparedStatement preparedStatement = 
					connection.prepareStatement("insert into couse values(?,?,?,?);");
			preparedStatement.setInt(1, id);
			preparedStatement.setString(2, name);
			preparedStatement.setString(3, tel);
			preparedStatement.setString(4, sex);
			//第四步: 执行SQL语句返回结果集	
			preparedStatement.executeUpdate();//executeUpdate只要修改数据就用,不管是增删改
			}
		
		//获取couse表中的所有数据
		public void Statement() throws SQLException {
			//第三步:获取statement对象
			PreparedStatement preparedStatement = 
					connection.prepareStatement("select * from couse;");//MySQL语句
			//第四步: 执行SQL语句返回结果集
		 	ResultSet resultset = preparedStatement.executeQuery();//executeQuery只有查询用
		 	//集合存储
		 	
		 	//第五步:遍历结果集
		 	while(resultset.next()) {
		 		//next:判断是否有下一条数据
		 		System.out.print(resultset.getInt("id") + " ");
		 									//数据库里什么字段,get方法就填什么类型
		 		System.out.println(resultset.getString("name")+ " " + resultset.getString("tel")
		 		+ " " + resultset.getString("sex"));

		 	}
		 	//第六步:关闭连接释放资源
		 	resultset.close();
		 	preparedStatement.close();
		}
		
		//关闭连接
		public void close() throws SQLException {
			connection.close();
		}
		
		//删除数据
		
		private void delete() throws SQLException {
			Scanner in = new Scanner(System.in);
			System.out.println("请输入要删除的id");
			id = in.nextInt();
					PreparedStatement preparedStatement =
							connection.prepareStatement("delete from couse where id = ?");
					preparedStatement.setInt(1, id);
					//执行Sql语句
					preparedStatement.executeUpdate();
				}
				
				//修改数据方法
		private void Name() throws SQLException {
			Scanner in = new Scanner(System.in);
			System.out.println("-------------------请选择:");
			System.out.println("1.修改名字");
			System.out.println("2.修改电话");
			System.out.println("3.性别");
			//PreparedStatement preparedStatement = null;
		//	int id;
			int i = in.nextInt();
			switch(i) {
			case 1:
			System.out.println("请输入id");
			id = in.nextInt();
			System.out.println("请输入要修改的名字");
			String name = in.next();
			PreparedStatement	preparedStatement1 = 
							connection.prepareStatement("update couse set name = ? where id = ?;");
					preparedStatement1.setString(1, name);
					preparedStatement1.setInt(2, id);
					//执行Sql语句
					preparedStatement1.executeUpdate();
					break;
			case 2:
				System.out.println("请输入id");
				id = in.nextInt();
				System.out.println("请输入要修改的电话");
				String tel = in.next();
				PreparedStatement	 preparedStatement2 = 
								connection.prepareStatement("update couse set tel = ? where id = ?;");
						preparedStatement2.setString(1, tel);
						preparedStatement2.setInt(2, id);
						//执行Sql语句
						preparedStatement2.executeUpdate();
						break;
			case 3:
				System.out.println("请输入id");
				id = in.nextInt();
				System.out.println("请输入要修改的性别");
				String sex = in.next();
				PreparedStatement preparedStatement = 
								connection.prepareStatement("update couse set sex = ? where id = ?;");
						preparedStatement.setString(1, sex);
						preparedStatement.setInt(2, id);
						//执行Sql语句
						preparedStatement.executeUpdate();
						break;
				}
			System.out.println("修改完成");
		}
				
				//查询电话
		public void Tel(String tel) throws SQLException {
					//第三步:获取statement对象
					PreparedStatement preparedStatement = 
							connection.prepareStatement("select * from couse where tel like ?;");//不能写入通配符
					preparedStatement.setString(1, tel);
					//第四步: 执行SQL语句返回结果集
				 	ResultSet resultset = preparedStatement.executeQuery();
				 	while(resultset.next()) {
				 		//next:判断是否有下一条数据
	//			 		System.out.println(resultset.getInt("id") + " ");
				 									//数据库里什么字段,get方法就填什么类型
				 		System.out.println(resultset.getInt("id") + " " + resultset.getString("name")+
				 				" " + resultset.getString("tel")+ " " + resultset.getString("sex"));

				 	}
				}
				
				//修改电话数据方法
		private void Tel1(int id, String tel) throws SQLException {
					PreparedStatement preparedStatement = 
							connection.prepareStatement("update couse set tel = ? where id = ?;");
					preparedStatement.setString(1, tel);
					preparedStatement.setInt(2, id);
					//执行Sql语句
					preparedStatement.executeUpdate();
				}
				
				//查询性别
		public void Sex(String sex) throws SQLException {
					//第三步:获取statement对象
					PreparedStatement preparedStatement = 
							connection.prepareStatement("select * from couse where sex = ? ");//MySQL语句
					preparedStatement.setString(1,sex);
					//第四步: 执行SQL语句返回结果集
				 	ResultSet resultset = preparedStatement.executeQuery();
				 	while(resultset.next()) {
				 		//next:判断是否有下一条数据
				 		System.out.print(resultset.getInt("id") + " ");
				 									//数据库里什么字段,get方法就填什么类型
				 		System.out.println(resultset.getString("name")+ " " + resultset.getString("tel")
				 		+ " " + resultset.getString("sex"));

				 	}
				}
	public static void main(String[] args) throws SQLException {
		// TODO Auto-generated method stub
		数据库 s = new 数据库();
		Scanner in = new Scanner(System.in);
		//通过对象利用jdbc连接数据库
		s.DriverManager();
		System.out.println("-------------------查询所有人信息:");
		s.Statement();
		System.out.println("-------------------向表中新增三条数据:");
//		s.add(1, "小焦","16688775522", "男");
//		s.add(4, "芳总","15184057973", "女");
//		s.add(10, "小黄","18199058864", "男");
//		s.Statement();
//		System.out.println("             查询表中电话以123开头的数据:");
//		s.Tel(in.next());

//		System.out.println("-------------------修改第5条数据,电话改为“13124235300");
//		s.Name();
//		s.Statement();
		System.out.println("-------------------查询性别为男的数据:");
		s.Sex(in.next());
		System.out.println("-------------------修改id为10的名字改为大帅哥:");
		s.Name();
		s.Statement();
		System.out.println("-------------------查询表中电话以131开头的数据:");
		s.Tel(in.next());
		System.out.println("-------------------删除表中第3条数据:");
		s.delete();
		s.Statement();
		System.out.println("-------------------查询性别为女的数据:");
		s.Sex(in.next());
		System.out.println("-------------------查询所有人信息:");
		s.Statement();
		s.close();
	}

}

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值