当前位置:   article > 正文

学生选课系统(数据库版)_学生选课数据库csdn

学生选课数据库csdn

7c3863dcd9974fe78c2526e6daf3eeee.png

1.a)12f9ece9ac444b679eff2c828280c313.png 

1.b)54144f8f8ebc43e38eba5f4fad49d1c6.png

1.c)df47abae019d4476b957b47704d9301a.png  

2. 

  1. //导入包
  2. import java.sql.Connection;
  3. import java.sql.DriverManager;
  4. import java.sql.PreparedStatement;
  5. import java.sql.ResultSet;
  6. import java.sql.SQLException;
  7. import com.mysql.cj.jdbc.Driver;
  8. //创建名为 StudentClass 的类
  9. public class StudentClass {
  10. // 声明一个 Connection 对象,用于与数据库建立连接
  11. Connection connection;
  12. // 建立数据库连接的方法
  13. public void getConnection() throws SQLException {
  14. // 注册 MySQL 驱动程序
  15. DriverManager.registerDriver(new Driver());
  16. // 获取与指定数据库的连接
  17. connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/school_java", "root", "1234");
  18. }
  19. // 关闭数据库连接的方法
  20. public void close() throws SQLException {
  21. connection.close();
  22. }
  23. // 查询并输出所有学生的信息
  24. public void selectAllStudents() throws SQLException {
  25. // 创建预处理语句,用于执行 SQL 查询
  26. PreparedStatement preparedStatement = connection.prepareStatement("SELECT * FROM student;");
  27. // 执行查询,并将结果保存在 ResultSet 对象中
  28. ResultSet resultSet = preparedStatement.executeQuery();
  29. // 循环遍历结果集,输出每一行学生信息
  30. while (resultSet.next()) {
  31. System.out.println("id: " + resultSet.getInt("id") +
  32. ", 名字: " + resultSet.getString("name") +
  33. ", 电话: " + resultSet.getString("tel") +
  34. ", 性别: " + resultSet.getString("sex"));
  35. }
  36. // 关闭结果集和预处理语句
  37. resultSet.close();
  38. preparedStatement.close();
  39. }
  40. // 向 student 表中添加一名学生
  41. public void addStudent(int id, String name, String tel, String sex) throws SQLException {
  42. // 创建预处理语句,用于执行 SQL 插入语句
  43. PreparedStatement preparedStatement = connection.prepareStatement("INSERT INTO student (id,name, tel, sex) VALUES (?, ?, ?, ?);");
  44. // 为预处理语句中的参数赋值
  45. preparedStatement.setInt(1, id);
  46. preparedStatement.setString(2, name);
  47. preparedStatement.setString(3, tel);
  48. preparedStatement.setString(4, sex);
  49. // 执行插入操作
  50. preparedStatement.executeUpdate();
  51. // 关闭预处理语句
  52. preparedStatement.close();
  53. }
  54. // 修改学生的电话号码
  55. public void updateTel(int id, String newTel) throws SQLException {
  56. // 创建预处理语句,用于执行 SQL 更新语句
  57. PreparedStatement preparedStatement = connection.prepareStatement("UPDATE student SET tel = ? WHERE id = ?;");
  58. // 为预处理语句中的参数赋值
  59. preparedStatement.setString(1, newTel);
  60. preparedStatement.setInt(2, id);
  61. // 执行更新操作
  62. preparedStatement.executeUpdate();
  63. // 关闭预处理语句
  64. preparedStatement.close();
  65. }
  66. // 查询并输出所有男性学生的信息
  67. public void selectMaleStudents() throws SQLException {
  68. // 创建预处理语句,用于执行 SQL 查询
  69. PreparedStatement preparedStatement = connection.prepareStatement("SELECT * FROM student WHERE sex = '男';");
  70. // 执行查询,并将结果保存在 ResultSet 对象中
  71. ResultSet resultSet = preparedStatement.executeQuery();
  72. // 循环遍历结果集,输出每一行学生信息
  73. while (resultSet.next()) {
  74. System.out.println("id: " + resultSet.getInt("id") +
  75. ", 名字: " + resultSet.getString("name") +
  76. ", 电话: " + resultSet.getString("tel") +
  77. ", 性别: " + resultSet.getString("sex"));
  78. }
  79. // 关闭结果集和预处理语句
  80. resultSet.close();
  81. preparedStatement.close();
  82. }
  83. // 修改学生的姓名
  84. public void updateName(int id, String newName) throws SQLException {
  85. // 创建预处理语句,用于执行 SQL 更新语句
  86. PreparedStatement preparedStatement = connection.prepareStatement("UPDATE student SET name = ? WHERE id = ?;");
  87. // 为预处理语句中的参数赋值
  88. preparedStatement.setString(1, newName);
  89. preparedStatement.setInt(2, id);
  90. // 执行更新操作
  91. preparedStatement.executeUpdate();
  92. // 关闭预处理语句
  93. preparedStatement.close();
  94. }
  95. // 查询并输出所有电话号码以139开头的女性学生信息
  96. public void selectFemale139() throws SQLException {
  97. // 创建预处理语句,用于执行 SQL 查询
  98. PreparedStatement preparedStatement = connection.prepareStatement("SELECT * FROM student WHERE tel LIKE '139%';");
  99. // 执行查询,并将结果保存在 ResultSet 对象中
  100. ResultSet resultSet = preparedStatement.executeQuery();
  101. // 循环遍历结果集,输出每一行学生信息
  102. while (resultSet.next()) {
  103. System.out.println("ID: " + resultSet.getInt("id") +
  104. ", 名字: " + resultSet.getString("name") +
  105. ", 电话: " + resultSet.getString("tel") +
  106. ", 性别: " + resultSet.getString("sex"));
  107. }
  108. // 关闭结果集和预处理语句
  109. resultSet.close();
  110. preparedStatement.close();
  111. }
  112. // 查询并输出所有电话号码以182开头的女性学生信息
  113. public void selectFemale182() throws SQLException {
  114. // 创建预处理语句,用于执行 SQL 查询
  115. PreparedStatement preparedStatement = connection.prepareStatement("SELECT * FROM student WHERE tel LIKE '182%';");
  116. // 执行查询,并将结果保存在 ResultSet 对象中
  117. ResultSet resultSet = preparedStatement.executeQuery();
  118. // 循环遍历结果集,输出每一行学生信息
  119. while (resultSet.next()) {
  120. System.out.println("ID: " + resultSet.getInt("id") +
  121. ", 名字: " + resultSet.getString("name") +
  122. ", 电话: " + resultSet.getString("tel") +
  123. ", 性别: " + resultSet.getString("sex"));
  124. }
  125. resultSet.close();
  126. preparedStatement.close();
  127. }
  128. // 删除指定 id 的学生信息
  129. public void deleteStudent(int id) throws SQLException {
  130. // 创建预处理语句,用于执行 SQL 删除语句
  131. PreparedStatement preparedStatement = connection.prepareStatement("DELETE FROM student WHERE id = ?;");
  132. // 为预处理语句中的参数赋值
  133. preparedStatement.setInt(1, id);
  134. // 执行删除操作
  135. preparedStatement.executeUpdate();
  136. // 关闭预处理语句
  137. preparedStatement.close();
  138. }
  139. // 查询并输出所有女性学生的信息
  140. public void selectFemaleStudents() throws SQLException {
  141. // 创建预处理语句,用于执行 SQL 查询
  142. PreparedStatement preparedStatement = connection.prepareStatement("SELECT * FROM student WHERE sex = '女';");
  143. // 执行查询,并将结果保存在 ResultSet 对象中
  144. ResultSet resultSet = preparedStatement.executeQuery();
  145. // 循环遍历结果集,输出每一行学生信息
  146. while (resultSet.next()) {
  147. System.out.println("ID: " + resultSet.getInt("id") +
  148. ", 名字: " + resultSet.getString("name") +
  149. ", 电话: " + resultSet.getString("tel") +
  150. ", 性别: " + resultSet.getString("sex"));
  151. }
  152. // 关闭结果集和预处理语句
  153. resultSet.close();
  154. preparedStatement.close();
  155. }
  156. // 主方法,程序入口
  157. public static void main(String[] args) throws SQLException {
  158. // 创建 StudentClass 对象
  159. StudentClass studentDemo = new StudentClass();
  160. // 建立数据库连接
  161. studentDemo.getConnection();
  162. // 输出提示信息
  163. System.out.println("查询所有学生信息:");
  164. // 调用方法,查询并输出所有学生信息
  165. studentDemo.selectAllStudents();
  166. // 输出提示信息
  167. System.out.println("新增三个学生:");
  168. // 调用方法,添加三名新学生
  169. studentDemo.addStudent(11,"迦南", "18255556666", "女");
  170. studentDemo.addStudent(12,"特木尔", "13977778888", "男");
  171. studentDemo.addStudent(13,"沈妙", "13999998888", "女");
  172. // 调用方法,查询并输出所有学生信息
  173. studentDemo.selectAllStudents();
  174. // 输出提示信息
  175. System.out.println("查询电话以182开头的学生信息:");
  176. // 调用方法,查询并输出电话号码以182开头的女性学生信息
  177. studentDemo.selectFemale182();
  178. // 输出提示信息
  179. System.out.println("修改第5个学生的电话为13124235300:");
  180. // 调用方法,修改第5名学生的电话号码
  181. studentDemo.updateTel(5, "13124235300");
  182. // 调用方法,查询并输出所有学生信息
  183. studentDemo.selectAllStudents();
  184. // 输出提示信息
  185. System.out.println("查询所有男性学生信息:");
  186. // 调用方法,查询并输出所有男性学生信息
  187. studentDemo.selectMaleStudents();
  188. // 输出提示信息
  189. System.out.println("修改第10个学生的姓名为'大帅哥':");
  190. // 调用方法,修改第10名学生的姓名
  191. studentDemo.updateName(10, "大帅哥");
  192. // 调用方法,查询并输出所有学生信息
  193. studentDemo.selectAllStudents();
  194. // 输出提示信息
  195. System.out.println("查询电话以139开头的学生信息:");
  196. // 调用方法,查询并输出电话号码以139开头的女性学生信息
  197. studentDemo.selectFemale139();
  198. // 输出提示信息
  199. System.out.println("删除第3个学生:");
  200. // 调用方法,删除第3名学生
  201. studentDemo.deleteStudent(3);
  202. // 调用方法,查询并输出所有学生信息
  203. studentDemo.selectAllStudents();
  204. // 输出提示信息
  205. System.out.println("查询所有女性学生信息:");
  206. // 调用方法,查询并输出所有女性学生信息
  207. studentDemo.selectFemaleStudents();
  208. // 输出提示信息
  209. System.out.println("查询所有学生信息:");
  210. // 调用方法,查询并输出所有学生信息
  211. studentDemo.selectAllStudents();
  212. // 关闭数据库连接
  213. studentDemo.close();
  214. }
  215. }

 

b0734b19110b4043a737875bd96099cb.png 

67794c82628f43f1a0d3582a3222c641.png 

 

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小蓝xlanll/article/detail/615664
推荐阅读
相关标签
  

闽ICP备14008679号