mysql创建分页表_mysql基础教程(三)-----增删改、子查询、创建管理表、约束和分页...

插入

INSERT语句语法

e1d6bd9add1fa4f1dd0106538e6fbd76.png

从其它表中拷贝数据

4a5636f5bf0e31cdc8c3469ab0d75ef3.png

• 不必书写 VALUES 子句。

• 子查询中的值列表应与 INSERT 子句中的列名对应

update语句

62ae6630636901018011c864456089a6.png

• 可以一次更新多条数据。

• 如果需要回滚数据,需要保证在DML前,进行 设置:

SET AUTOCOMMIT = FALSE;

因为mysql中默认事务是自动提交的。

delete语句

f51071bdf4ef6f6889e748382822594f.png

子查询

概念

出现在其他语句内部的select语句,称为子查询或内查询内部嵌套其他select语句的查询,称为外查询或主查询。

select first_name from employees wheredepartment_idin(select department_id fromdepartmentswhere location_id=1700)

创建数据库

创建一个保存员工信息的数据库 :

create database employees;

相关其他命令

create database employees if not exists;

show databases;查看当前所有数据库

use employees;“使用”一个数据库,使其作为当前数据库

创建表

• 必须具备:

– CREATE TABLE权限

– 存储空间

• 必须指定:

– 表名

– 列名, 数据类型, 尺寸

语法

b80a05851922d461d25803fb0775d120.png

注:创建表这种更加合理

create table if not exists tableName...

数据类型

概述

mysql数据类型分为

数值类型

字符类型

日期类型

数值类型

整型

942a21a65c483fb70b744950e2001e26.png

小数

611f51e1112d8285cc6d6658e69a76e3.png

位类型

e8a3493a315766e1bc40fdf3b279391b.png

字符类型

char和varchar类型

cccfeed59b6977b9d57f6b6cd6693d08.png

binary和varbinary类型

说明:类似于char和varchar,不同的是它们包含二进制字符串而不包含非二 进制字符串。

Enum类型

说明:又称为枚举类型哦,要求插入的值必须属于列表中指定的值之一。

Set类型

说明:和Enum类型类似,里面可以保存0~64个成员。和Enum类型最大的区 别是:SET类型一次可以选取多个成员,而Enum只能选一个 根据成员个数不同,存储所占的字节也不同

日期类型

f4ceec763b8e59b2748059eb8eeb4703.png

常用数据类型

7c562ad290b527b5058d6d4b0e132ad3.png

创建表示例

2e42e263bb158e6d2028b0918d687ae9.png

ALTER TABLE 语句

向已有的表中添加列

修改现有表中的列

删除现有表中的列

重命名现有表中的列

增加一个列

ALTER TABLE dept80 ADD job_id varchar(15);

修改一个列

• 可以修改列的数据类型, 尺寸和默认值

19edf3f9f965889b4bced9abe4c39dc3.png

• 对默认值的修改只影响今后对表的修改

删除一个列

c0fe5510c9b89b69c75e625e6ff9a65c.png

重命名一个列

97d5b358baeb91faacb47f42c78c53d3.png

总结:alter table 表名 add|drop|modify|change column 列名 【列类型 约束】

删除表

数据和结构都被删除

所有正在运行的相关事务被提交

所有相关索引被删除

DROP TABLE 语句不能回滚

4a2cdaaab83bba7fc6b584facc44876f.png

注:删除用下面这种相对更为合理

drop table if exists tableName;

清空表

• TRUNCATE TABLE 语句:

– 删除表中所有的数据

– 释放表的存储空间

– TRUNCATE语句不能回滚

7d7b24230f0487cebb50b1f4ccb6812f.png

约束

什么是约束

• 为了保证数据的一致性和完整性,SQL规范以约 束的方式对表数据进行额外的条件限制。

• 约束是表级的强制规定

• 可以在创建表时规定约束(通过 CREATE TABLE 语句),或者在表创建之后也可以(通 过 ALTER TABLE 语句)

类型

– NOT NULL 非空约束,规定某个字段不能为空

– UNIQUE 唯一约束,规定某个字段在整个表中是唯一的

– PRIMARY KEY 主键(非空且唯一)

– FOREIGN KEY 外键

– CHECK 检查约束(mysql不支持)

– DEFAULT 默认值

NOT NULL 约束

保证列值不能为空。

创建 not null 约束:

0099e3094298b0c3eacaa159539f4dbd.png

增加 not null 约束:

da4620a5d938c4320f417258f906422a.png

取消 not null 约束:

d4865a9068a06f9c7f34c6bd3ace0b34.png

取消 not null 约束,增加默认值:

fb0559f5013810b0ddcd5ec1ae5eeb2b.png

UNIQUE 约束

同一个表可以有多个唯一约束,多个列组合的约束。 在创建唯一约束的时候,如果不给唯一约束名称,就 默认和列名相同。MySQL会给唯一约束的列上默认创建一个唯一索引。

添加唯一约束

0a99f4504d63c4afd88f786fc76da0c2.png

b02d0e452165946b354d960e96ba0059.png

删除约束

1b99141d778c41a91015edd856f54062.png

PRIMARY KEY 约束

主键约束相当于唯一约束+非空约束的组合,主 键约束列不允许重复,也不允许出现空值

如果是多列组合的主键约束,那么这些列都不允 许为空值,并且组合的值不允许重复。

每个表最多只允许一个主键,建立主键约束可以 在列级别创建,也可以在表级别上创建。

MySQL的主键名总是PRIMARY,当创建主键约束 时,系统默认会在所在的列和列组合上建立对应的 唯一索引。

删除主键约束

d3140216aa72b6bc5ad99bdfa07820dc.png

添加主键约束

19236b94ee2e93137e4e266deac4054b.png

修改主键约束

407b37fa167350cd467a3eb1729e2483.png

FOREIGN KEY 约束

外键约束是保证一个或两个表之间的参照完整性, 外键是构建于一个表的两个字段或是两个表的两个字 段之间的参照关系。

从表的外键值必须在主表中能找到或者为空。当主 表的记录被从表参照时,主表的记录将不允许删除, 如果要删除数据,需要先删除从表中依赖该记录的数 据,然后才可以删除主表的数据。

还有一种就是级联删除子表数据。

注意:外键约束的参照列,在主表中引用的只能是 主键或唯一键约束的列

同一个表可以有多个外键约束

创建外键约束:

b623b483c89c5ea773c4d9fdb7418870.png

创建多列外键组合,必须使用表级约束:

db0e35ccc873af2fdc92df084421776e.png

删除外键约束:

c8f98b8bc36f570d4ae407bae5f78032.png

增加外键约束:

bb9c76052c1ff242f474d7207932929a.png

分页

分页原理

所谓分页显示,就是将数据库中的结果集,一段一段显示 出来需要的条件

前10条记录:

SELECT * FROM table LIMIT 0,10;

第11至20条记录:

SELECT * FROM table LIMIT 10,10;

公式:

(当前页数-1)*每页条数,每页条数

SELECT * FROM table LIMIT(PageNo - 1)*PageSize,PageSize;

注:limit子句必须放在整个查询语句的最后!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值