【石家庄校区】MySQL数据库及JDBC阶段笔记整理 MySQL 1. Sql语句的分类 DDL:关键字有create,alter,drop,truncate DML:关键字有insert,update,delete DCL:关键字有if DQL:关键字有select 2. 对数据库的操作,数据库并不会涉及到频发的操作,所以用得不是太多 相对重要的主要集中在表的创建,表结构(字段)的修改,以及对表中的记录的操作, 其 中包括在表中添加记录,删除记录,修改记录,查询记录等,其中查询记录的操作 更为多变,使用频率也更高,因而重要程度也更高 3. Create table 表名(字段名 字段类型(长度) 约束); 4. 创建数据库和表,用create关键字,在表中插入记录用insert into关键字 删除数据库和表,用drop关键字,删除表中的记录用delete关键字,删除表记录时一 般会加上where条件,因为很少有需求将整个表中的记录清空 5. 指定插入某些列时:insert into 表名(列名1,列名2,...) values(值1,值2,...) 值需与列名 顺序一一对应 一次性插入所有列:insert into 表名 values(值1,值2,...) 值需与表中的字段的顺序一一 对应 6. 对表记录进行修改,删除,查询时,一般都会添加where条件,因为修改和删除数据 时,很少遇到整列修改,或者全部删除的情况,查询时,往往也是查询我们需要的数据 7. 查询语句的整体规则: select 字段 from 表名 where 条件 group by 字段 having order by 字段 Where条件中不能出现聚合函数,如果使用带有聚合函数的条件进行过滤,使用having 8. 升序asc 降序 desc 模糊查询like 模糊查询中,占位符_表示一个字符,%表示0个或 多个字符,范围查询用in关键字,并列条件用and or not 9. 聚合函数:求和sum 统计个数count 最大值max 10. 多表设计:一对多:在多的一方设置关联字段,跟一的一方主键对应,根据业务需求, 可以选择是否将多的一方的关联字段设置为外键(设置为外键,会增加数据的安全性, 但是不易于修改表) 多对多:需要建立中间表,中间表中至少要有两个字段,分别关联两个表中的主键字段, 同样,是否设置成外键,需要根据具体的业务需求来决定 11. 内连接:隐式内连接在:select * from tab1,tab2 where 关联条件 左外连接:select * from tab1 left join tab2 on 关联条件 JDBC 12. 使用PreparedStatement 第一步:注册驱动Class.forName() 第二步:获得连接Connection conn = DriverManager.getConnection(url.username,password) 第三步:编写sql语句:需要用到值的地方用占位符?代替 第四步:预编译sql并获得可执行的PreparedStatement对象 第五步:为sql语句中的占位符设置值:PreparedStatement对象.setString/setInt(int n[第几个问号],String s/Int m) 第六步:执行sql语句:增删改都用executeUpdate() 查询用executeQuery() 查询结果返回Resultset对象,如果要查看,需要遍历打印 第七步:释放资源 13. 为了提高程序的复用性,与解耦合,需要进行工具类的抽取,创建一个工具类和一个配置文件,配置文件的后缀名是.properties
|