创建、增、删、改、查

数据库表的创建:

语法:

DROP TABLE IF EXISTS tablename; -- 检查创建表是否存在,若存在则删除新建。(在你确定要新建这张表时加上。数据库在日历累月的使用中可能已经建立了。不写会更好,因为存在的话会报错 ‘ Table 'course1' already exists’ ,此表已存在,避免误操作删除重要数据表。)

create table tablename(

字段1名 字段类型(长度) 约束关键字<约束值>   COMMENT '备注', 

/* 加上字段描述是个好习惯,既方便自己以后查看,也方便维护或者分析人员见表知义。*/

字段1名 字段类型(长度) 约束关键字<约束值>   COMMENT '备注', 

字段1名 字段类型(长度) 约束关键字<约束值>   COMMENT '备注', 

PRIMARY KEY (`主键字段1`,`主键字段2`) -- 复合主键

)

建表常用约束:

NULL/NOT NULL:空或非空,限制此列是否可以为NULL值。

DEFAULT:默认值,一般用与列值为空时赋予默认值,语法:DEFAULT <默认值>;默认值需要和约束的字段类型符合,例如INT就约定整数,varchar就可以约束文本。

PRIMARY KEY:主键约束。可以约束单字段主键,也可以多个字段(复合主键)作为唯一主键。这里需要注意实际使用的表结构关系。

UNIQUE:唯一性约束。限制列中没有重复的值,允许多个NULL,不需要的话,限定 NOT NULL即可。这里有个有趣的说法(大家通常说主键=唯一性约束+非空约束,这个可能会有小小的争议,不过具体看使用的情境,单一字段的情况下这么说是没错的,复合主键的情况下可能实际使用就会与需求不符,例如学生表需要自增ID统计总数(举个例子,自增ID不一定总是需要作为主键的),我们又需要学生ID作为主键以保证没有重复的学号,这时候在不熟悉的情况下可能会直接使用复合主键,也就是PRIMARY KEY (`ID`,`学生ID`),若是这么约束的话,会发现其实我们是可以插入不同ID,相同学生ID的,这样就不符合实际的使用情况了,得拆开写,ID为自增主键,学生ID约束为唯一即可。在使用复合主键时需要注意一下)

FOREIGN KEY:外键约束是用来加强两个表(主表和从表)的一列或多列数据之间的连接的,可以保证一个或两个表之间的参照完整性,外键是构建于一个表的两个字段或是两个表的两个字段之间的参照关系。创建外键约束的顺序是先定义主表的主键,然后定义从表的外键。也就是说只有主表的主键才能被从表用来作为外键使用,被约束的从表中的列可以不是主键,主表限制了从表更新和插入的操作。

增:插入数据(INSERT INTO)

语法:

1、INSERT INTO TABLENAME  VALUES ('字段1值', '字段2值', 字段3值, 字段4值);

此语法在表结构完全符合的情况下使用,即全表插入。

2、INSERT INTO TABLENAME   (字段1, 字段2, 字段3, 字段4)

                                      VALUES  ('字段1值', '字段2值', 字段3值, 字段4值);

最常用的写法,一般都会指定需要插入值的列,在插入对应的值,避免不必要的错误。

3、INSERT INTO TABLENAME   (字段1, 字段2, 字段3, 字段4)

                                      SELECT  字段1, 字段2, 字段3, 字段4  FROM  TABLENAME

从某个表中查询数据插入到另一个表中。

插入数据时,注意数据格式需要符合列字段类型,文本类型需要' '标识,数字类可以省略;还需要注意字段的约束,例如某些列值不允许NULL值,这时候就不能使用NULL来替代,以及一些自增的ID类,都需要注意。

删:从表中删除数据(DELETE FROM)

语法:

1、DELETE FROM TABLE

删除全表,不清除自增类ID的序号排序,会接着之前的最大ID继续增加新数据。若是想清除自增ID从0开始计数的话,使用TRUNCATE TABLE。

2、 DELETE FROM TABLE WHERE 子句

删除表中符合WHERE子句条件的行。

对于数据表来说,通常会要求保证表存在主键,以便执行操作时能为WHERE子句提供准确的范围值,以便正确的删除指定的数据。DELETE删除的是行。在删除数据表前,一般会先SELECT查看表中数据,确认是否是需要删除的,保证数据稳定以及安全,避免误操作。

改:更新或修改表中特定的行,或所有行(UPDATE)

1、UPDATE TABLENAME  SET 字段='新值'

设置表内字段=新值,若是没有加上WHERE子句限制,则更新的是此字段的所有行

2、UPDATE TABLENAME  SET 字段='新值'  WHERE 子句

更新表中符合WHERE条件的行。

查:查询数据表的数据(SELECT )

这个比较常见,也是使用最多的,暂且略过。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值