SQL语句----DDL

简介: SQL语句----DDL

SQL通用语法

SQL语句可以单行或多行书写,以分号结尾

SQL语句可以使用空格或缩进来增强语句的可读性

MySQL数据库的SQL语句不区分大小写,关键字建议使用大写

注释:单行注释 --注释内容 或 #注释内容(MySQL特有)

多行注释 /* 注释内容 */

SQL分类

DDL–数据库操作

查询

查询所有数据库

SHOW DATABASES;

查询当前数据库

SELECT DATABASE();

创建

CREATE DATABASE [ IF NOT EXISTS ] 数据库名 [ DEFAULT CHARSET 字符集 ] [ COLLATE 排序规则 ];

删除

DROP DATABASE [ IF EXISTS ] 数据库名;

使用

USE 数据库名;

DDL–表操作

查询

查询当前数据库所有表

SHOW TABLES;

查询表结构

DESC 表名;

查询指定表的建表语句

SHOW CREATE TABLE 表名;

创建

CREATE TABLE 表名 (
  字段1 字段1类型 [ COMMENT 字段1注释 ],
  字段2 字段2类型 [ COMMENT 字段2注释 ],
  字段3 字段3类型 [ COMMENT 字段3注释 ],
  ...
  字段n 字段n类型 [ COMMENT 字段n注释 ]
)[ COMMENT 表注释 ];

最后一个字段不用逗号

数据类型

MySQL中的数据类型主要分为三类:

数值类型、字符串类型、日期时间类型

数值类型:

double(共有几位数,小数的位数)

decimal(精度,标度)

精度 数的位数;标度 小数的位数

字符串类型:

char 定长,性能高

varchar 不定长,性能较差

char设定好字符串的长度,不足会用空格补充;varchar会根据字符串的长度分配空间,由于要计算需要多少空间,所以性能较差

日期时间类型:

案例:

CREATE TABLE emp (
  id INT COMMENT'编号',
  num VARCHAR(10) COMMENT'员工编号',
  `name` VARCHAR(10) COMMENT'员工姓名',
  gender CHAR(1) COMMENT'性别',
  age TINYINT UNSIGNED COMMENT'年龄',
  `no` CHAR(18) COMMENT'身份证号',
  ·time· DATE COMMENT'入职时间'
) COMMENT'员工信息表';

修改

添加字段:

ALTER TABLE 表名 ADD 字段名 类型(长度) [COMMENT 注释] [约束];

为emp表添加字段‘nickname’ varchar(20)

ALTER TABLE emp ADD nickname VARCHAR(20);

修改数据类型:

ALTER TABLE 表名 MODIFY 字段名 新数据类型(长度);

nickname 数据类型改为 VARCHAR(10);

ALTER TABLE emp MODIFY nickname VARCHAR(10);

修改字段名和字段类型:

ALTER TABLE 表名 CHANGE 旧字段名 新字段名 类型(长度) [comment 注释] [约束];

nickname 数据类型改为 VARCHAR(20);

ALTER TABLE emp CHANGE nickname username VARCHAR(20);

删除字段

ALTER TABLE 表名 DROP 字段名;

删除新的字段

ALTER TABLE emp DROP username; 

修改表名

ALTER TABLE 表名 RENAME TO 新表名;

emp表名改为employee

ALTER TABLE emp RENAME TO employee;

删除表:

DROP TABLE [IF EXISTS] 表名;

删除表并重新创建该表:

truncate table 表名

注意:在删除表时表中的数据也会全被删除



相关文章
|
1月前
|
SQL 关系型数据库 MySQL
数据库开发之SQL简介以及DDL的详细解析
数据库开发之SQL简介以及DDL的详细解析
46 0
|
7月前
|
SQL 关系型数据库 MySQL
【MySQL入门到精通-黑马程序员】MySQL基础篇-SQL概述及DDL
(精度指数的所有位数;标度指小数点后数的位数) 字符串类型
70 0
|
7月前
|
SQL 关系型数据库 MySQL
MySQL基本SQL语句1(DDL)
SQL(Structured Query Language)结构化查询语言,用于存取,查询,更新数据以及管理关系型数据库系统SQL指令分为四类DDL Data Defintion language 数据库定义语言 用于完成对数据库对象(数据表,数据库,视图,索引)的创建,删除,修改 DML Data Manipulation language 数据操作语言 用于完成对数据表中的数据添加,删除,修改 DQL
51 0
|
1月前
|
SQL 存储 大数据
【大数据技术Hadoop+Spark】Hive基础SQL语法DDL、DML、DQL讲解及演示(附SQL语句)
【大数据技术Hadoop+Spark】Hive基础SQL语法DDL、DML、DQL讲解及演示(附SQL语句)
128 0
|
21天前
|
SQL 关系型数据库 API
Flink(十三)【Flink SQL(上)SqlClient、DDL、查询】(1)
Flink(十三)【Flink SQL(上)SqlClient、DDL、查询】
Flink(十三)【Flink SQL(上)SqlClient、DDL、查询】(1)
|
21天前
|
SQL 流计算
Flink(十三)【Flink SQL(上)SqlClient、DDL、查询】(4)
Flink(十三)【Flink SQL(上)SqlClient、DDL、查询】
|
21天前
|
SQL Java 流计算
Flink(十三)【Flink SQL(上)SqlClient、DDL、查询】(3)
Flink(十三)【Flink SQL(上)SqlClient、DDL、查询】
|
21天前
|
SQL 消息中间件 存储
Flink(十三)【Flink SQL(上)SqlClient、DDL、查询】(2)
Flink(十三)【Flink SQL(上)SqlClient、DDL、查询】
|
21天前
|
SQL 存储 关系型数据库
MySQL数据库——SQL(1)-SQL通用语法、SQL分类、DDL(数据库操作、表操作)
MySQL数据库——SQL(1)-SQL通用语法、SQL分类、DDL(数据库操作、表操作)
25 1
|
6天前
|
SQL 关系型数据库 MySQL
零基础学习数据库SQL语句之定义数据库对象的DDL语句
零基础学习数据库SQL语句之定义数据库对象的DDL语句
13 0