数据库设计范式 1阶范式(1NF) 1.原子性(数据不可再分) 2阶范式(2NF) 1.原子性(数据不可再分) 2.唯一性 (通过主键得到一条确定的数据),消除部分依赖 (依赖部分主键,主键由多个属性构成) 3阶范式(3NF) 1.原子性(数据不可再分) 2.唯一性 (通过主键得到一条确定的数据),消除部分依赖 (依赖部分主键,主键由多个属性构成) 3.独立性,消除传递依赖(内部没有传递依赖) 插入语句:Insert into 表名(字段名) values (值表达式1,.....),(........),(........); 1.这是最常用的语法,可以一次插入多行数据,用逗号隔开 2.插入语句要理解为每次插入数据都是以行为单位。 3.字段名通常不推荐省略,后面的值列表应该与字段名一一对应。 4.其中的值表达式,可以是一个“直接”,或“函数调用的结果”,或变量值;其中,如果对应字段是字符型或时间类型,则直接值应该使用单引号。 replace into 表名(字段名) values (值表达式1,.....),(........),(........); 理解:和insert into 几乎一样,唯一区别:插入的数据的主键或唯一键“有重复”,那么此时原有的数据会被修改; 删除数据Delete from 表名 【where条件】 【order by 排序】 【limit限定】; 说明: 1.以行为单位执行 2.通常删除数据都需要带where条件,很少使用到order by 和limit; 3.Order by排序设定,用于指定这些数据的删除序列,通常和limit一起配合使用 4.Limit 限定用于设定删除多少行(按order by设定的顺序); 修改数据语法形式: Update 表名 set 字段名1=值1,字段名2=值2,.... where语句; all和 distinct用于设定select出来的数据: ·all会显示所有数据 ·distinct会只显示一条重复数据 from子句from字句表示select部分从中取得数据的数据源,其实就是表。 通常,其后就是表名;比如: from tab1; 但也可能是其他一些数据来源: from tab1,tab2(连接表); Select输出(取出)部分,如果给定的是字段名,则其必然是来源于这里的“数据源” 的字段; Where子句说明: 1.where子句就是对from子句中的数据源中的数据进行筛选的条件设定,筛选的机制是“一行一行进行判断”,作用和if语句一样 2.Where子句依赖于from子句; 3.Where子句中,通常需要使用各种运算符: a) 算术运算符: + - * / % b) 比较运算符: > >= < <= = <>(不等于) == != c) 逻辑运算符: and or not Is运算符:空值和布尔值的判断有四张情况使用: XX is null:判断某个字段是“null”值——就是没有值; XX is not mull: 判断某个字段不是“null”值——就是不为空; XX is true:判断某个值为真; XX is false: 判断某个值为假;
|