20165227 2018-4 《Java程序设计》第七周学习总结
教材学习内容总结
第十一章
- 连接数据库:
Connection getConnection(java.lang.String,java.lang.String,java.lang.String)
Connection getConnection(java.lang.String)
- 条件与排序查询:when语句和order by子语句
- 更新、添加与删除:
- 更新:
update 表 set 字段 = 新值 where <条件子句>
- 添加:
insert into 表(字段列表) values (对应的具体记录)
- 删除:
delete from 表名 where <条件子句>
- 更新:
- 通配符?的使用:在预处理语句中可以使用
?
通配符(英文?)来代替字段的值 - 事务:指应用程序保证事务中的SQL语句要么全执行要么全不执行
- JDBC事务处理的步骤:先用
setAutoCommit(booean b)
方法关闭自动提交方法;再用commit()
方法处理事务;用rollback()
方法处理事务失败
- JDBC事务处理的步骤:先用
教材学习中的问题和解决过程
- 问题1:预处理语句中PreparedStatement对象中,
ResultSet executeQuery()
、boolean execute()
和int executeUpdate()
三个方法是什么作用,为什么有这三种方法? - 问题1解决方案:
ResultSet executeQuery()
:用于产生单个结果集的语句,例如 SELECT 语句。 被使用最多的执行 SQL 语句的方法是 executeQuery。这个方法被用来执行 SELECT 语句,它几乎是使用最多的 SQL 语句。boolean execute()
: 用于执行返回多个结果集、多个更新计数或二者组合的语句。int executeUpdate()
:用于执行 INSERT、UPDATE 或 DELETE 语句以及 SQL DDL(数据定义语言)语句。executeUpdate 的返回值是一个整数,指示受影响的行数(即更新计数)。对于 CREATE TABLE 或 DROP TABLE 等不操作行的语句,executeUpdate 的返回值总为零。
代码调试中的问题和解决过程
- 问题1:在调试第十一章P337的Example11_4.java的时候,结果集没有输出记录
- 问题1解决方案:当返回结果集后,必须立即输出结果集的记录,不然会接着自动执行了更新语句
代码托管
上周考试错题总结
- 第三十四题中的正则表达式的应用及辨别错误需要好好的记忆以及学习,以防下次再出现同样的错误
其他(感悟、思考等,可选)
- 这周的学习中学习了数据库的安装与使用,随着学习范围的拉长,学习难度也会越愈发变难,在之后的学习得更加努力才行
- 上周的测试题错了很多题,是需要反思和改正的,希望下次能做得更好!
学习进度条
代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
---|---|---|---|---|
目标 | 5000行 | 30篇 | 400小时 | |
第一周 | 210/210 | 1/1 | 20/20 | |
第二周 | 240/450 | 1/2 | 18/38 | |
第三周 | 496/946 | 1/3 | 22/60 | |
第四周 | 624/1570 | 1/4 | 30/90 | |
第五周 | 843/2413 | 1/5 | 24/114 | |
第六周 | 733/3146 | 1/6 | 20/134 | |
第七周 | 628/3774 | 1/7 | 21/155 |