数据库_3

DML语言

数据操作语言
插入、修改、删除

修改

sql92语法:修改单表的记录 
update 表名 set 字段=,字段=值 【where 筛选条件】;

sql99语法:修改多表的记录
update1 别名 
left|right|inner join2 别名 
on 连接条件  
set 字段=,字段=值 
【where 筛选条件】;

删除

方式1:delete语句

单表的删除:
	delete from 表名 【where 筛选条件】

多表的删除:
	delete 别名1,别名2
	from1 别名1,表2 别名2
	where 连接条件
	and 筛选条件;

方式2:truncate语句

	truncate table 表名

两种方式的区别

    1.truncate不能加where条件,而delete可以加where条件
	
	2.truncate的效率高一丢丢
	
	3.truncate 删除带自增长的列的表后,如果再插入数据,数据从1开始
	
	delete 删除带自增长列的表后,如果再插入数据,数据从上一次的断点处开始
	
	4.truncate删除不能回滚,delete删除可以回滚

DDL:

库的管理:

一、创建库
create database 库名
二、删除库
	drop database 库名

表的管理:

创建表

	CREATE TABLE IF NOT EXISTS 表名(
	);

修改表

1.添加列

alter table 表名 add column 列名 类型 【first|after 字段名】;

2.修改列的类型或约束

alter table 表名 modify column 列名 新类型 【新约束】;

3.修改列名

alter table 表名 change column 旧列名 新列名 类型;

4 .删除列

alter table 表名 drop column 列名;

5.修改表名

alter table 表名 renameto】 新表名;

删除表

drop tableif exists】 表名;

表的复制

1、复制表的结构
create table 表名 like 旧表;
2、复制表的结构+数据
create table 表名 
select 查询列表 from 旧表【where 筛选】;

常见约束

一、常见的约束

NOT NULL:非空,该字段的值必填
UNIQUE:唯一,该字段的值不可重复
DEFAULT:默认,该字段的值不用手动插入有默认值
CHECK:检查,mysql不支持
PRIMARY KEY:主键,该字段的值不可重复并且非空  unique+not null
FOREIGN KEY:外键,该字段的值引用了另外的表的字段

主键和唯一
1、区别:
①、一个表至多有一个主键,但可以有多个唯一
②、主键不允许为空,唯一可以为空
2、相同点
都具有唯一性
都支持组合键,但不推荐

二、创建表时添加约束

create table 表名(
	字段名 字段类型 not null,#非空
	字段名 字段类型 primary key,#主键
	字段名 字段类型 unique,#唯一
	字段名 字段类型 default,#默认
	constraint 约束名 foreign key(字段名) references 主表(被引用列)
)
注意:
			支持类型		可以起约束名			
列级约束		除了外键		不可以
表级约束		除了非空和默认	可以,但对主键无效

列级约束可以在一个字段上追加多个,中间用空格隔开,没有顺序要求

三、自增长列
特点:
1、不用手动插入值,可以自动提供序列值,默认从1开始,步长为1
2、一个表至多有一个自增长列
3、自增长列只能支持数值型
4、自增长列必须为一个key

一、创建表时设置自增长列
create table(
	字段名 字段类型 约束 auto_increment
)
二、修改表时设置自增长列
alter tablemodify column 字段名 字段类型 约束 auto_increment
三、删除自增长列
alter tablemodify column 字段名 字段类型 约束 

事物

视图

一、含义
mysql5.1版本出现的新特性,本身是一个虚拟表,它的数据来自于表,通过执行时动态生成。
好处:
1、简化sql语句
2、提高了sql的重用性
3、保护基表的数据,提高了安全性
二、创建

create view 视图名
as
查询语句;

三、修改

方式一:
create or replace view 视图名
as
查询语句;
方式二:
alter view 视图名
as
查询语句

四、删除

drop view 视图1,视图2,...;

五、查看

desc 视图名;
show create view 视图名;
注意:视图一般用于查询的,而不是更新的,所以具备以下特点的视图都不允许更新
①包含分组函数、group by、distinct、having、union、
②join
③常量视图
④where后的子查询用到了from中的表
⑤用到了不可更新的视图

六、视图和表的对比

		关键字		是否占用物理空间			使用
视图	view		占用较小,只保存sql逻辑		一般用于查询
表		table		保存实际的数据			增删改查
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值