package 第十七章;
import java.sql.Connection;
import com.mysql.cj.jdbc.Driver;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
public class MysqlDemo1 {
Connection connection;
public static void main(String[] args) throws SQLException {
// TODO Auto-generated method stub
MysqlDemo1 mysqldemo1 = new MysqlDemo1();
mysqldemo1.getConnection();
System.out.println("查询人员数据,结果为:");
mysqldemo1.selectAll();
System.out.println("新增人员数据,结果为:");
mysqldemo1.add(11, "丁国俊"," 179234","女");
mysqldemo1.add(12, "ccd"," 179775","男");
mysqldemo1.add(13, "塞班"," 119712","男");
mysqldemo1.selectAll();
System.out.println("查询182开头的数据,结果为:");
mysqldemo1.obscure();//查询课程表中的数据
mysqldemo1.selectAll();
System.out.println("修改指定5位置上的电话号码");
mysqldemo1.update(5,"1312418");//修改该位置的数据
mysqldemo1.selectAll();
System.out.println("查询性别为男的数据");
mysqldemo1.man("男");
System.out.println("修改指定10位置上的名字");
mysqldemo1.updatedate(10,"sc");//修改该位置的数据
mysqldemo1.selectAll();
System.out.println("查询179开头的数据,结果为:");
mysqldemo1.obscure1();//查询课程表中的数据
mysqldemo1.selectAll();
System.out.println("删除课程11,12,13");
mysqldemo1.delete("11");//删除指定位置的数据
mysqldemo1.delete("12");//删除指定位置的数据
mysqldemo1.delete("13");//删除指定位置的数据
mysqldemo1.selectAll();
System.out.println("查询性别为女的数据");
mysqldemo1.man1("女");
}
查询性别为女的学生数据:
public void man1(String name ) throws SQLException {
PreparedStatement preparedstatement =connection.prepareStatement("select*from student where sex = ?;");
preparedstatement.setString(1, name);
ResultSet resultSet =preparedstatement.executeQuery() ;
while(resultSet.next()) {
System.out.print(resultSet.getInt("id")+" ");
System.out.println(resultSet.getString("name"));
System.out.println(resultSet.getString("tel"));
System.out.println(resultSet.getString("sex"));
}
//第六步:关闭连接释放资源
preparedstatement.close();
}
删除指定位置上的数据:
public void delete(String id) throws SQLException {//删除指定位置上的数据
PreparedStatement preparedStatement = connection.prepareStatement("delete from student where id = ?;");
preparedStatement.setString(1, id);//
//第四步 :执行SQL语句
preparedStatement.executeUpdate();
//第六步关闭接连释放资源
preparedStatement.close();
}
查询电话179开头的学生数据:
public void obscure1() throws SQLException {
PreparedStatement preparedstatement=connection.prepareStatement("select*from student where tel like'179%';");
ResultSet resultSet = preparedstatement.executeQuery();//executeQuery只能用来查询 //新增修改删除都是使用另一种e
//第五步:遍历结果集
while(resultSet.next()) {
System.out.print(resultSet.getInt("id")+" ");
System.out.println(resultSet.getString("name")+" ");
System.out.println(resultSet.getString("tel")+" ");
System.out.println(resultSet.getString("sex")+" ");
}
preparedstatement.close();
}
修改第五个学生的数据:
public void updatedate(int id,String name) throws SQLException {
PreparedStatement preparedstatement =connection.prepareStatement("update student set name=? where id=? ; ");
preparedstatement.setString(1, name);
preparedstatement.setInt(2, id);
//第四步: 执行SOL语句
preparedstatement.executeUpdate();
//第六步: 关闭连接释放资源
preparedstatement.close();
}
查询性别为男的学生数据:
public void man(String name ) throws SQLException {
PreparedStatement preparedstatement =connection.prepareStatement("select*from student where sex = ?;");
preparedstatement.setString(1, name);
ResultSet resultSet =preparedstatement.executeQuery() ;
while(resultSet.next()) {
System.out.print(resultSet.getInt("id")+" ");
System.out.println(resultSet.getString("name"));
System.out.println(resultSet.getString("tel"));
System.out.println(resultSet.getString("sex"));
}
preparedstatement.close();
}
修改第十位学生的数据:
public void update(int id,String tel) throws SQLException {
PreparedStatement preparedstatement =connection.prepareStatement("update student set tel=? where id=? ; ");
preparedstatement.setString(1, tel);
preparedstatement.setInt(2, id);
//preparedstatement.setString(3, name);
//preparedstatement.setString(4, sex);
//第四步: 执行SOL语句
preparedstatement.executeUpdate();
//第六步: 关闭连接释放资源
preparedstatement.close();
}
查询电话开头为182的学生数据:
public void obscure() throws SQLException {
PreparedStatement preparedStatement=connection.prepareStatement("select*from student where tel like'182%'");
ResultSet resultSet = preparedStatement.executeQuery();//executeQuery只能用来查询 //新增修改删除都是使用另一种e
//第五步:遍历结果集
while(resultSet.next()) {
System.out.print(resultSet.getInt("id")+" ");
System.out.println(resultSet.getString("name"));
System.out.println(resultSet.getString("tel"));
System.out.println(resultSet.getString("sex"));
}
}
添加学生数据:
public void add(int id ,String name,String tel , String sex) throws SQLException {
PreparedStatement preparedStatement=connection.prepareStatement("insert into student values (?,?,?,?);");//添加数据
preparedStatement.setInt(1, id);
preparedStatement.setString(2,name);
preparedStatement.setString(3,tel);
preparedStatement.setString(4,sex);
preparedStatement.executeUpdate();
//第六步关闭接连释放资源
preparedStatement.close();
}
查询表格所有数据:
public void getConnection() throws SQLException{
//第一步:注册驱动
DriverManager.registerDriver(new Driver());
//第二步:获取连接
connection=DriverManager.getConnection("jdbc:mysql://localhost:3306/school_java","root","1234");
}
public void selectAll() throws SQLException {
//第三步:获取statement对象
PreparedStatement preparedStatement=connection.prepareStatement("select * from student;");
//第四步:执行SQL语句返回结果集
ResultSet resultSet = preparedStatement.executeQuery();//executeQuery只能用来查询 //新增修改删除都是使用另一种e
//第五步:遍历结果集
while(resultSet.next()) {
System.out.print(resultSet.getInt("id")+" ");
System.out.println(resultSet.getString("name"));
System.out.println(resultSet.getString("tel"));
System.out.println(resultSet.getString("sex"));
}
}
public void close() throws SQLException {
connection.close();//最后关闭连接释放资源
}
}
运行结果: