MySQL 基本操作--DDL:数据定义语句(建表、更改表结构等等)

数据库的操作:

创建数据库

create database 数据库名称;

显示数据库
show databases;

使用数据库
use 数据库名;

删除数据库存

drop database 数据库名;

表的操作:

create table 表名
(
字段名1 数据类型,
字段名2 数据类型,
字段名2 数据类型,
等等...
)

删除表

drop table 表名;


显示表
show tables;


显示表的结构关系
desc 表名;

添加字段
alter table 表名 add 字段名 数据类型;

修改字段数据类型
alter table 类名 modify 字段名 数据类型;


删除字段

alter table 类名 drop 字段名;


修改字段名
alter table 表名 change  修改前的字段名 修改后的字段名 数据类型;


数据库约束:

作用:保证数据的完整性

NOT NULL:非空约束,指定某列不能为空。
UNIQUE:唯一约束,指定某列或者几列组合不能为空。
PRIMARY KEY:主键,指定该列的值唯一地标识该条记录。
FOREIGN KEY:外键,指定该行记录从属于主表中的一条记录,主要用于保证参照完整性。
CHECK:检查,指定一个布尔表达式,用于指定对应列的值必须满足该表达式。(MySQL数据库不支持)

约束有两种实现写法:
1、列级约束写法:针对列定义是进行约束处理
2、表级约束写法:针对表定义进行约束处理


NOT NULL
作用:指定某列(字段)不能为空
只支持:列级约束写法

create table 表名
(
列名 int not null,
列名 varchar(20)
);
修改不为空: alter 表名 modify 列名 数据类型 not null;


UNIQUE
作用:描写某列的值是唯一
列级写法:
create table 表名
(
test_id int not null,
test_name varchar(255) unique
);

表级写法:

create table 表名
(
test_id int not null,
test_name varchar(255),

constraint 约束名 unique(test_pass)
);

删除unique约束
alter table 表名 drop constraint index 约束名;


PRIMARY KEY约束
作用:针对行的唯标识

列级约束写法:

create table 表名
(
test_id int primary key,  -------(test_id int auto_increment primary key  自增长写法)
test_name varchar(255)
);

表级约束写法:

create table 表名
(
test_id int
test_name varchar(255),

constraint约束名 primary key(test_id)
);

删除主键约束
alter table 表名 drop primary key;


FOREIGN KEY(外键约束)

概念:保证数据的完整性, 主表和从表的数据完整性

主表
create table t_teacher
(
teacher_id int primary key,
teacher_name varchar(20)
);

从表
create table t_student
(
student_id int primary key,
student_name varchar(20),
teacher_id int,
constraint 约束名 foreign key(teacher_id) references t_teacher(teacher_id) on delete cascade
);

解除外键约束
alter table 表名 drop foreign key 约束名;

添加外键约束
alter 从表名 add constraint 约束名 foreign key(从表字段) references 主表名(主表字段);


创建表的索引

作用:优化查询性能
使用场景:针对某个字段,作频繁的查询
索引产生:1、系统自动产生     例如:主键、唯一约束    2、自创建索引


自创建索引:create index 索引名 on 表名(字段名);


删除索引:drop index 索引名 on 表名;


视图

概念:虚拟映射表
特点:1、不能操作数据(删除、添加、更新)
   2、便于查询数据(多表复杂数据)

创建视图
create or replace view 视图名
as  查询语句

例如:create or replace view view_student
as  select * from t_student s,t_teacher t where s.fk_teacher_id=t.teacher_id;

删除视图:drop view 视图名;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值