发表于: 2017-11-06 22:53:04

1 848


今天完成的事情

                今天原计划是在MySQL基础完成之后进行JDBC的学习,但是无奈今天对于MySQL的学习一直到晚上22:00才完毕, 还要加上写日报和笔记,只有将JDBC推到明天.

           今天整体的内容就是围绕着增删改查中的查,也就是SELECT语句的各种使用方法进行学习,学习时间没有上任务, 我就不贴我具体的学习流程了, 主要贴一下重要的知识点以及我个人的理解.


①select 语句中什么时候不能使用别名?

     在加上了where条件限定之后不能在select的时候给column_name 取别名,因为where 语句会在select 之前执行,通过查阅资料得到了这么一个顺序:

from

on

添加外部行,连接类型为 outer join(今天关于join关键字的内容只有内连接和自连接;左连接,右连接,外连接没有提到,这里还不是很清楚,)

where

group by

having(group by 和 having 在我今天学习的资料中还没有提到,打算之后需要的时候再学)

select

distinct

order by (order by 能使用select 的别名就是因为它的执行顺序在select 之后)

limit


②LIKE运算符

使用LIKE运算符执行通配查询,查询条件可包含文字字符或数字:

%通配符:可表示零或多个任意字符。

_通配符:可表示一个任意字符。

这里我个人认为算是重点,因为毕竟和java的正则有类似功能,但是写法不同

select * from table_name where column_name like '%A%'

select * from table_name where column_name like 'AA__'


③分页查询

这里主要记录一下公式:

查看每页n行,第m页的内容: 

select * from table_name limit (m-1)*n,n


④外键约束

主键约束(PRIMARY KEY): 约束在当前表中,指定列的值非空且唯一.

外键约束(FOREIGN KEY): A表中的外键列的值必须参照于B表中的主键列的值,外键列允许为NULL.

注意:在MySQL中,InnoDB支持事务和外键.

修改表的存储引擎为InnDB:

ALTER TABLE 表名 ENGINE='InnoDB';

--------------------------------

主表和从表关系

主表可以单独存在,就是被参考的表

从表是表中的数据参照与主表中的数据

删除表时:

先删除从表再删除主表

其中主表中的一条数据,在从表中有多条数据与之对应(一对多的关系)

-------------------------------

约定优于配置:约定好规则可以少些很多代码

表名: t_表名   t_student  t_class

主键: id

外键: 参照表(缩写)_主键名  t_class_id   ->  class_id   dept_id

开发中为了提高性能,往往不要外键,但是依然使用InnoDB存储引擎




明天计划的事情:明天上午把MySQL剩下的多表查询的几个方式学习了.下午正式进入JDBC的学习,


收获:今天将查表了解的更深入了一步.


返回列表 返回列表
评论

    分享到