第一范式(原子性,不可分割):确保存在一个主键且没有重复的 数据组,存在一个住建这个很容易理解,但是没有重复的数据,可能就会 有异议了,那么什么 是重复的数据组呢? 举个例子:一个 学号为01的学生,他的后面有他的电话和手机号,那么这样就算是 重复的数据组,可以这么想,他的电话和手机号,都可以联系到他所以这个就是重复的数据组。也就是说主键所在的行没有 重复的列。
第二范式(完全依赖):首先第一范式是在第二范式的基础上存在的,如果第一范式不符合,那么第二范式也不符合。第二范式要求主键中的任意列必须没有局部性相关性。第二范式是第一范式的基础上解决多对多的实体关系,即在表中的每一行数据只能完成一个任务,同时每一个非主键属性都要完全依赖于主键属性,也就是说非主键属性要由主键推导出来,消除部分依赖的情况。举例:一个 炸鸡点在各个地区都有分店,每一个地区都有自己的编号,如果要找其中一家的分店,要根据地区编号找到这个分店。
第三范式(无传递性):符合第二范式,非主键都依赖于主键。在第二范式的基础上,摆脱非主键列的传递依赖,比如一个表中有三列A、B、C,存在着A决定B,且B决定C的情况,那么这个表就不属于第三范式,因为A可以通过传递依赖决定C。举例:在提高班一个人可能有 好几个师傅,但是根据你可以推出 你的师傅A,还可以根据你推出你的师傅B,这样有一个传递的过程。
select后面表示筛选的内容,from后面表示筛选内容来自的位置,where后面表示筛选的条件。
第一章
Decimal数据类型的灵活性在于它允许声明需要存储的数字的数目。
Decimal(38,12)表示分配38个空间,小数点后面保留12个数字的空间。
创建表
CREATE TABLE name_of_table
(name _of colume colume_datatype
)
更改现有表
ALTER TABLE name_of _table 允许添加并删除一个现有表中的列
ADD name_of _field data_type 添加新的列
DROP COLUMN name _of _field删除
删除现有表
DROP TABLE name_of _table
第二章
插入新数据:INSERT INTO table_name (column_names) VALUES (data_values)
更新数据:
UPDATA table_name
SET column _name=value
WHERE condition
逻辑运算符:and or,and两边的必须都为真,or 一个表达式为真或两个表达式都为真
删除数据 DELETE FORM Memberdatails;
第三章
like运算符:当搜索一个字符字段时,like允许使用通配符。
通配符:% 匹配一个或者多个字符
_匹配一个字符
Order by 排序,升序是默认的排序方式,降序在末尾添加DESC关键字
Oracle和IBM中,存在两种串连文本数据或基于文本的列的方式。在使用串连符号,使用两条垂线(||)字符,另一种是使用CONCAT()函数。
视图
视图是一个虚拟表。在一个数据库中,如果需要抽出几个表中的数据,抽出来的东西放在视图里面,这个就是视图的作用,他不是一个真是的表。