1、创建数据库:

CREATE DATABASE 数据库名;
eg.CREATE DATABASE test_ddl;
2、创建表

CREATE TABLE 表名(
列名 数据类型 约束,
...
);

eg. CREATE TABLE table_ddl(
id INT(10) PRIMARY KEY AUTO_INCREMENT,
test_content VARCHAR(20) NOT NULL
);
3、复制表
(1)复制表结构(不含数据)

CREATE TABLE 新表名 (SELECT * FROM 旧表名 WHERE 1=2);

eg.CREATE TABLE copy_table_ddl(
SELECT *
FROM table_ddl
WHERE 1=2);
(2)复制表数据以及结构

CREATE TABLE 新表名 (SELECT * FROM 旧表名);

eg.CREATE TABLE copy_table_ddl2(
SELECT *
FROM table_ddl
);
4.修改表(ALTER)

(1)修改表名:(RENAME)

ALTER TABLE 旧表名 RENAME 新表名;

eg.ALTER TABLE table_ddl RENAME table_ddl_rename;
(2)修改列名(CHANGE)

ALTER TABLE 表名 CHANGE 旧列名 新列名 原数据类型 原约束;

eg.ALTER TABLE table_ddl_rename
CHANGE test_content content VARCHAR(20) NOT NULL;
(3)修改数据类型和约束(MODIFY)

ALTER TABLE 表名 MODIFY 列名 新数据类型 新约束;

eg.ALTER TABLE table_ddl_rename MODIFY content VARCHAR(100) NULL;
(4)删除列(DROP)

ALTER TABLE 表名 DROP 列名;

eg.ALTER TABLE table_ddl_rename DROP COLUMN new_columm;
(5)添加列(ADD)

ALTER TABLE 表名 ADD COLUMN 列名 数据类型 约束;

eg.ALTER TABLE table_ddl_rename ADD COLUMN new_columm INT(20) UNIQUE;
(6)删除主键、唯一键约束(先删除索引,再删除约束)
#因为主键只有一个,所以可以直接删除,不用索引:

删除主键:
ALTER TABLE 表名 DROP PRIMARY KEY;

eg.ALTER TABLE copy_table_ddl DROP PRIMARY KEY;

删除唯一键约束索引:
ALTER TABLE 表名 DROP INDEX 索引名;

eg.ALTER TABLE table_ddl_rename DROP INDEX new_columm;
5.其他语句:

DESC 表名; #查询表结构
SHOW INDEX FROM 表名; #查询表索引
6.约束条件:

(1)主键:PRIMARY KEY
(2)唯一键:UNIQUE
(3)非空:NOT NULL
(4)自增:AUTO_INCREMENT
(5)默认值:DEFAULT
(6)外键:FOREGIN KEY
。。。

1、创建数据库:

CREATE DATABASE 数据库名;
eg.CREATE DATABASE test_ddl;
2、创建表

CREATE TABLE 表名(
列名 数据类型 约束,
...
);

eg. CREATE TABLE table_ddl(
id INT(10) PRIMARY KEY AUTO_INCREMENT,
test_content VARCHAR(20) NOT NULL
);
3、复制表
(1)复制表结构(不含数据)

CREATE TABLE 新表名 (SELECT * FROM 旧表名 WHERE 1=2);

eg.CREATE TABLE copy_table_ddl(
SELECT *
FROM table_ddl
WHERE 1=2);
(2)复制表数据以及结构

CREATE TABLE 新表名 (SELECT * FROM 旧表名);

eg.CREATE TABLE copy_table_ddl2(
SELECT *
FROM table_ddl
);
4.修改表(ALTER)

(1)修改表名:(RENAME)

ALTER TABLE 旧表名 RENAME 新表名;

eg.ALTER TABLE table_ddl RENAME table_ddl_rename;
(2)修改列名(CHANGE)

ALTER TABLE 表名 CHANGE 旧列名 新列名 原数据类型 原约束;

eg.ALTER TABLE table_ddl_rename
CHANGE test_content content VARCHAR(20) NOT NULL;
(3)修改数据类型和约束(MODIFY)

ALTER TABLE 表名 MODIFY 列名 新数据类型 新约束;

eg.ALTER TABLE table_ddl_rename MODIFY content VARCHAR(100) NULL;
(4)删除列(DROP)

ALTER TABLE 表名 DROP 列名;

eg.ALTER TABLE table_ddl_rename DROP COLUMN new_columm;
(5)添加列(ADD)

ALTER TABLE 表名 ADD COLUMN 列名 数据类型 约束;

eg.ALTER TABLE table_ddl_rename ADD COLUMN new_columm INT(20) UNIQUE;
(6)删除主键、唯一键约束(先删除索引,再删除约束)
#因为主键只有一个,所以可以直接删除,不用索引:

删除主键:
ALTER TABLE 表名 DROP PRIMARY KEY;

eg.ALTER TABLE copy_table_ddl DROP PRIMARY KEY;

删除唯一键约束索引:
ALTER TABLE 表名 DROP INDEX 索引名;

eg.ALTER TABLE table_ddl_rename DROP INDEX new_columm;
5.其他语句:

DESC 表名; #查询表结构
SHOW INDEX FROM 表名; #查询表索引
6.约束条件:

(1)主键:PRIMARY KEY
(2)唯一键:UNIQUE
(3)非空:NOT NULL
(4)自增:AUTO_INCREMENT
(5)默认值:DEFAULT
(6)外键:FOREGIN KEY
。。。

1、创建数据库:

CREATE DATABASE 数据库名;
eg.CREATE DATABASE test_ddl;
2、创建表

CREATE TABLE 表名(
列名 数据类型 约束,
...
);

eg. CREATE TABLE table_ddl(
id INT(10) PRIMARY KEY AUTO_INCREMENT,
test_content VARCHAR(20) NOT NULL
);
3、复制表
(1)复制表结构(不含数据)

CREATE TABLE 新表名 (SELECT * FROM 旧表名 WHERE 1=2);

eg.CREATE TABLE copy_table_ddl(
SELECT *
FROM table_ddl
WHERE 1=2);
(2)复制表数据以及结构

CREATE TABLE 新表名 (SELECT * FROM 旧表名);

eg.CREATE TABLE copy_table_ddl2(
SELECT *
FROM table_ddl
);
4.修改表(ALTER)

(1)修改表名:(RENAME)

ALTER TABLE 旧表名 RENAME 新表名;

eg.ALTER TABLE table_ddl RENAME table_ddl_rename;
(2)修改列名(CHANGE)

ALTER TABLE 表名 CHANGE 旧列名 新列名 原数据类型 原约束;

eg.ALTER TABLE table_ddl_rename
CHANGE test_content content VARCHAR(20) NOT NULL;
(3)修改数据类型和约束(MODIFY)

ALTER TABLE 表名 MODIFY 列名 新数据类型 新约束;

eg.ALTER TABLE table_ddl_rename MODIFY content VARCHAR(100) NULL;
(4)删除列(DROP)

ALTER TABLE 表名 DROP 列名;

eg.ALTER TABLE table_ddl_rename DROP COLUMN new_columm;
(5)添加列(ADD)

ALTER TABLE 表名 ADD COLUMN 列名 数据类型 约束;

eg.ALTER TABLE table_ddl_rename ADD COLUMN new_columm INT(20) UNIQUE;
(6)删除主键、唯一键约束(先删除索引,再删除约束)
#因为主键只有一个,所以可以直接删除,不用索引:

删除主键:
ALTER TABLE 表名 DROP PRIMARY KEY;

eg.ALTER TABLE copy_table_ddl DROP PRIMARY KEY;

删除唯一键约束索引:
ALTER TABLE 表名 DROP INDEX 索引名;

eg.ALTER TABLE table_ddl_rename DROP INDEX new_columm;
5.其他语句:

DESC 表名; #查询表结构
SHOW INDEX FROM 表名; #查询表索引
6.约束条件:

(1)主键:PRIMARY KEY
(2)唯一键:UNIQUE
(3)非空:NOT NULL
(4)自增:AUTO_INCREMENT
(5)默认值:DEFAULT
(6)外键:FOREGIN KEY
。。。

MySQL操作数据库和表的基本语句(DDL)的更多相关文章

  1. MySQL操作数据库和表的基本语句(DDL

    1.创建数据库: CREATE DATABASE 数据库名; eg.CREATE DATABASE test_ddl;122.创建表 CREATE TABLE 表名(列名 数据类型 约束,...); ...

  2. MySQL操作数据库和表的常用命令新手教程

    1.查看数据库 获取服务器上的数据库列表通常很有用.执行show databases;命令就可以搞定. mysql> show databases; 2.创建数据库 mysql> crea ...

  3. MySQL处理数据库和表的常用命令

    MySQL处理数据库和表的常用命令 [导读] 学习如何管理和导航MySQL数据库和表是要掌握的首要任务之一,下面的内容将主要对MySQL的数据库和表的一些常用命令进行总结,一些我们不得不掌握的命令,一 ...

  4. 第16课-数据库开发及ado.net-数据库SQl,创建数据库和表,增删改语句,约束,top和Distinct,聚合函数介绍

    第16课-数据库开发及ado.net 数据库SQl,创建数据库和表,增删改语句,约束,top和Distinct,聚合函数介绍 SQL语句入门(脚本.命令) SQL全名是结构化查询语言(Structur ...

  5. mysql查看数据库和表的占用空间大小

    mysql查看数据库和表的占用空间大小   第一部分-任务 将线上db,导出后,导入到office db 一. 两种方案: 1,将数据直接从online-->office,通过mysqldump ...

  6. 创建数据库和表的SQL语句【转】

    创建数据库和表的SQL语句 转至http://www.cnblogs.com/philanthr/archive/2011/08/09/2132398.html 创建数据库的SQL语句: 1 crea ...

  7. PHP连接MYSQL操作数据库

    PHP连接MYSQL操作数据库 <?php $con = mysql_connect("localhost","root",""); ...

  8. MySQL不同数据库之间表的简单同步

    MySQL不同数据库之间表的简单同步,实用轻量级数据如下案列展示:例如我现在主库上面有users .tenants两张表需要同步到备库上面主库1.确认主库数据条数 select count(*) fr ...

  9. Oracle数据库查看表空间sql语句

    转: Oracle数据库查看表空间sql语句 2018-09-03 15:49:51 兰海泽 阅读数 6212   版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出 ...

随机推荐

  1. BZOJ_5368_[Pkusc2018]真实排名_组合数

    BZOJ_5368_[Pkusc2018]真实排名_组合数 Description 小C是某知名比赛的组织者,该比赛一共有n名选手参加,每个选手的成绩是一个非负整数,定义一个选手的排名是:成绩不小于他 ...

  2. 2015年沈阳网赛 Jesus Is Here(DP中的计数问题)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5459 题目描述:给定一个递推得来的字符串,问字符串中不同cff之间的距离之和, 递推规则: s1=c; ...

  3. Vijos P1951 玄武密码 (AC自动机)

    描述 在美丽的玄武湖畔,鸡鸣寺边,鸡笼山前,有一块富饶而秀美的土地,人们唤作进香河.相传一日,一缕紫气从天而至,只一瞬间便消失在了进香河中.老人们说,这是玄武神灵将天书藏匿在此. 很多年后,人们终于在 ...

  4. 组件-实体-系统 Entiy-Compoent-System ECS架构整理

    继承体系的问题,为什么要用ECS 面向对象的问题 当一个新的类型需要多个老类型的不同功能的时候,不能很好的继承出来 游戏开发后期会有非常多的类,很难维护 游戏中子系统很多,它们对一个对象的关注点往往互 ...

  5. 关于自增id 你可能还不知道

    导读:在使用MySQL建表时,我们通常会创建一个自增字段(AUTO_INCREMENT),并以此字段作为主键.本篇文章将以问答的形式讲述关于自增id的一切. 注: 本文所讲的都是基于Innodb存储引 ...

  6. 【优化算法】Greedy Randomized Adaptive Search算法 超详细解析,附代码实现TSP问题求解

    01 概述 Greedy Randomized Adaptive Search,贪婪随机自适应搜索(GRAS),是组合优化问题中的多起点元启发式算法,在算法的每次迭代中,主要由两个阶段组成:构造(co ...

  7. JS 自写datapage.js 通用分页

    var Page = function () { }; Page.prototype = {     Loading: "<img src='/Content/Scripts/Data ...

  8. docker速记

    1.docker:一个轻量级的虚拟机.是一个容器 2.Linux系统包括—RedHat(商业版).Centos.Ubuntu 3.docker比作码头的集装箱,image镜像就是基石,images类似 ...

  9. [luogu4931]情侣?给我烧了!

    题解 有\(i\)对情侣全都不和谐那里推不出来只好写了一个暴力容斥然后大力卡常卡过去了== 容斥太过暴力,还是说正解吧 可以考虑直接计算\(n\)对情侣有\(k\)对和谐的方案数 设\(g[i]\)表 ...

  10. Miller&&Pollard HDOJ 4344 Mark the Rope

    题目传送门 题意:一个长为n(n<2^63)的管子,在管子上做标记,每隔L个长度单位做一个标记,从管子头端开始,保证最后一次标记恰好在管子的尾端.让你找出有多少个这样的L(L<n),且他们 ...