首页 > 技术文章 > 20165104孟凡斌-第七周作业

20165104mfb 2018-04-12 16:08 原文

20165104孟凡斌-第七周作业

这是本周的作业:知识点、代码截图、代码已上传到码云

教材学习内容总结

  • MySQL数据库管理系统,简称MySQL,是世界上最流行的开源数据库管理系统。
  • 启动之前必须进行安全初始化。在命令行进入MySQL安装目录的bin子目录,键入mysqld --initialize-insecure命令:
    D:\mysql-5.7.15-winx64\bin>mysqld --initialize-insecure
    作用:初始化data目录,并授权一个无密码的root用户。
  • Java提供了专门用于操作数据库的API,即JDBC (Java DataBase Connection)。程序经常使用JDBC进行如下的操作 :

(1)与一个数据库建立连接。

(2)向数据库发送SQL语句。

(3)处理数据库返回的结果。

  • MySQL数据库服务器启动后,应用程序为了能和数据库交互信息,必须首先和MySQL数据库服务器上的数据库建立连接。
  • 需要特别注意的是,如果数据库的表中的记录有汉字,那么在建立连接时需要额外多传递一个参数characterEncoding,并取值gb2312或utf-8
  • 查询操作的具体步骤如下

1.得到SQL查询语句对象:

try{ Statement sql=con.createStatement();
}
catch(SQLException e ){}

2.处理查询结果:SQL查询语句对数据库的查询操作将返回一个ResultSet对象,ResultSet对象是按“列”(字段)组织的数据行构成。

ResultSet rs = sql.executeQuery("SELECT * FROM students");

无论字段是何种属性,总可以使用getString(int columnIndex)或getString(String columnName)方法返回字段值的串表示

  • 应用程序在使用ResultSet对象中的数据时,就必须始终保持和数据库的连接,直到应用程序将ResultSet对象中的数据查看完毕
  • 顺序查询:ResultSet对象一次只能看到一个数据行,使用next()方法移到下一个数据行,next()方法最初的查询位置,位于第一行的前面。next()方法向下(向后、数据行号大的方向)移动游标,移动成功返回true,否则返回false。
  • where子语句的一般格式:
    select 字段 from 表名 where 条件
  • 排序:用order by子语句对记录排序
  • 更新

update 表 set 字段 = 新值 where <条件子句>

  • 添加

insert into 表(字段列表) values (对应的具体的记录)

insert into 表 values (对应的具体的记录)

  • 删除
    delete from 表名 where <条件子句>
  • 事务由一组SQL语句组成,所谓事务处理是指:应用程序保证事务中的SQL语句要么全部都执行,要么一个都不执行。
  • 使用PreparedStatement对象可以提高操作数据库的效率。

运行截图

代码托管

码云链接

第六周测试错题解析

  • 解析:A项:如果指定对象无法与该 set 中的当前元素进行比较,则抛出ClassCastException异常。

  • 解析:B项:如果此映射不包含该键的映射关系,则返回null。C项:如果该映射以前包含了一个该键的映射关系,则旧值被替换。

  • 解析:C项:\b\w{6}\b 匹配刚好6个字符的单词。F项: IP地址中每个数字都不能大于255,该表达式忽略了这个约束条件。正确的是((2[0-4]\d|25[0-5]|[01]?\d\d?).){3}(2[0-4]\d|25[0-5]|[01]?\d\d?)。


-解析:B项:srcEnd是字符串中要复制的最后一个字符之后的索引。

  • 解析:B项:直到索引 endIndex - 1 处的字符。E项:抛出IndexOutOfBoundsException异常

  • 解析:⑤TreeSet泛型类创建树集。

推荐阅读