数据库常用DDL语句
一、创建表
CREATE TABLE TABLE_NAME( #create table 表名
ID INT(4) PRIMARY KEY, #字段名 数据类型 完整性约束条件
NAME VARCHAR(10) NOT NULL, #查看表结构 DESC table_name
SEX CHAR(2) NOT NULL #show create table table_name
);
| 约束条件 | 功能 |
|---|---|
| primary key | 主键 |
| foreign key | 外键 |
| not null | 不能为空 |
| unique | 值唯一 |
| auto_increment | 自动递增 |
| default | 设置默认值 |
二、修改表(ALTER)
1.修改表名
alter table 旧表名 rename 新表名;
2.修改字段名
alter table table_name change 旧字段名 新字段名 数据类型;
3.修改字段数据类型
akter table table_name modify 字段名 数据类型;
4.删除字段
alter table table_name drop 字段名;
5.更改表的存储引擎
alter table table_name engine = 引擎名;
6.删除表的外键约束
alter table table_name drop foreign key 外键名;
7.增加字段
alter table table_name add 字段名 数据类型 [完整约束条件] [first | after 字段名];
#默认添加字段到最后
#first 字段添加到第一位
#after 字段名 :添加到改字段名后
8.修改字段的排列位置
alter table table_name modify 字段名1 数据类型 first | after 字段名2;
9.删除表
drop table table_name;
三、索引
1.创建索引
create [unique][fulltext][spatial] index 索引名 on 表名 (字段名 [长度][ASC|DESC]);
alter table table_name add [unique][fulltext][spatial] index 索引名 (字段名 [(长度)][ASC|DESC]);
#unique :唯一性索引
#fulltext : 全文索引 (char,varchar,text)
#spatial : 空间索引
2.删除索引
drop index 索引名 on table_name;
四、视图(view)
1.创建视图
create [algorithm={undefined|merge|temptable}]
view 视图名 [(属性清单)]
as select 语句
[with [cascaded|local] check option]; #可选参数更新视图时,要保证在改视图权限范围之内。
#algorithm :可选参数,表示选择的算法
#undefined : mysql自动选择所要使用的算法
#merge :
#temptable : 将视图的结果存入临时表
#属性清单:默认与select 语句中查询结果相同
#创建视图时最好加上with cascaded check option
create view view_name as select * from table_name;
2.查看视图
show create view view_name;
3.修改视图
create or replace |alter #替换create
4.更新视图
update view_name set 字段名=值 where 条件
5.删除视图
drop view [if exists] 视图名 [restrict|cascade];
#if exists 存在则执行,不存在不执行。
五、触发器
触发器是由事件触发某个操作,insert|update|delete
1.创建触发器
create trigger 触发器名 before|after insert|update|delete
on table_name for each row 执行语句
#before 触发之前执行,after 触发之后执行
#表名为触发事件的表
#for each row 表示任何一条记录上的操作满足触发事件都会触发该触发器
2.查看触发器
show triggers;
3.删除触发器
drop trigger 触发器名;
数据库常用DDL语句的更多相关文章
- GP数据库 常用SQL语句
GP数据库 常用SQL语句 --1,查看列名以及类型 select upper(column_name) ,data_type from information_schema.columns wher ...
- Oracle数据库常用Sql语句大全
一,数据控制语句 (DML) 部分 1.INSERT (往数据表里插入记录的语句) INSERT INTO 表名(字段名1, 字段名2, ……) VALUES ( 值1, 值2, ……); INSE ...
- Oracle 数据库常用SQL语句(1)
一.数据定义语句 CREATE:创建表或其它对象 create database test; //创建test数据库 ),sex )); //创建表 ALTER:修改表或其它对象的结构 )); //为 ...
- oracle数据库常用plsql语句
(一)oracle中常用的数据类型 (二)PL-sql基本语法 1.创建数据库表.删除数据库表 create table table1--创建表 ( field1 number(8), field2 ...
- ios数据库常用sql语句
SQlite常用语句 由于sql语句在程序代码中以字符串的形式存在,没有代码提示,不细心很容易出错,而且不容易被查出来.sql语句字符串是单引号. 写sql语句的时候一定要细心呀.如果写不好可以找公司 ...
- oracle数据库常用SQL语句(11.29更新)
笔者日常工作中常用到的sql语句,现总结如下,留作日后查看. 1.按照两列中的最大值取 ,只取两列其中的一列 SELECT * FROM t_doc T ORDER BY GREATEST(T.Loa ...
- Mysql数据库常用操作语句大全
零.用户管理: 1.新建用户: >CREATE USER name IDENTIFIED BY 'ssapdrow'; 2.更改密码: >SET PASSWORD FOR name=PAS ...
- 数据库常用SQL语句(三):子查询
一.为什么会使用子查询 虽然可以通过连接查询来实现多表查询数据记录,但不建议使用,因为连接查询的性能很差,为什么呢?我们来进行分析,例如 我们要查询部门表t_dept 和雇员表t_employee中的 ...
- 数据库常用SQL语句(一):常用的数据库、表操作及单表查询语句
以MySql数据库为例进行说明 1.数据库操作语句 2.表的操作语句 3.表中的字段操作语句 4.MYSQL支持的完整性约束 数据库管理系统提供了一致机制来检查数据库表中的数据是否满足规定的条件,以保 ...
随机推荐
- SpringBoot2.x修改Redis序列化方式
添加一个配置类即可: /** * @Author FengZeng * @Date 2022-03-22 13:43 * @Description TODO */ @Configuration pub ...
- Redis快速入门到精通
Redis Redis是一个开源的使用ANSI C语言编写.支持网络. 可基于内存亦可持久化的日志型.Key-Value型 NoSQL数据库,并提供多种语言的API.从2010年3 月15日起,Red ...
- 变量 数据类型 条件if语句
python是解释型 弱类型编程语言; "优雅", "明确", "简单"; 开发效率非常高; 可移植性; 可扩展性; 可嵌入型. ...
- 帝国CMS灵动标签调用包含指定短语关键词关键字文章的语法
[e:loop={"select * from phome_ecms_news where title like '%这里是关键词%' and checked=1 order by news ...
- 6.Docker容器底层实现了解与安全机制
原文地址: 点击直达 0x00 底层实现 我们以 Docker 基础架构来探究Docke底层的核心技术,简单的包括: Linux 上的命名空间(Namespaces) 控制组(Control grou ...
- 安卓记账本开发学习day10
完成了最后一部分功能 1.柱状分析每月的支出或收入 2. 删除所有记录
- 巧用 JuiceFS Sync 命令跨云迁移和同步数据
近年来,云计算已成为主流,企业从自身利益出发,或是不愿意被单一云服务商锁定,或是业务和数据冗余,或是出于成本优化考虑,会尝试将部分或者全部业务从线下机房迁移到云或者从一个云平台迁移到另一个云平台,业务 ...
- android软件简约记账app开发day10-主页面模块--头信息的展示,和之后功能完善的目标。
android软件简约记账app开发day10-主页面模块--头信息的展示,和之后功能完善的目标. 今天来写主界面头信息的展示,也就是将第一天的写的layout中的item_main_top展示到主界 ...
- Java语言学习day24--7月30日
###17创建子类对象过程的细节 * A 创建子类对象过程的细节 * 如果子类的构造方法第一行写了this调用了本类其他构造方法,那么super调用父类的语句还有吗? * 这时是没有的,因为this( ...
- 解决anaconda3打开不了闪退
今天想新创个环境,结果发现创不起,而且anaconda居然也进不去了. 然后尝试了网上各种方法,修改c:user/用户/用户名目录下的.condarc文件,镜像源,包括重装都没用. 最后 把.cond ...