1、创建数据库:

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

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

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

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

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

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

eg.CREATE TABLE copy_table_ddl2(
SELECT *
FROM table_ddl
);
1
2
3
4
5
6
4.修改表(ALTER)

(1)修改表名:(RENAME)

ALTER TABLE 旧表名 RENAME 新表名;

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

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

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

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

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

ALTER TABLE 表名 DROP 列名;

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

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

eg.ALTER TABLE table_ddl_rename ADD COLUMN new_columm INT(20) UNIQUE;
1
2
3
(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;
1
2
3
4
5
6
7
8
9
5.其他语句:

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

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

---------------------

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

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

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

  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. 《Java设计模式》之解释器模式

    解释器模式是类的行为模式.给定一个语言之后,解释器模式能够定义出其文法的一种表示,并同一时候提供一个解释器. client能够使用这个解释器来解释这个语言中的句子. 解释器模式的结构 以下就以一个示意 ...

  2. Android SnackBar:你值得拥有的信息提示控件

    概述: Snackbar提供了一个介于Toast和AlertDialog之间轻量级控件,它能够非常方便的提供消息的提示和动作反馈. 有时我们想这样一种控件.我们想他能够想Toast一样显示完毕便能够消 ...

  3. LeetCode 500. Keyboard Row (键盘行)

    Given a List of words, return the words that can be typed using letters of alphabet on only one row' ...

  4. jsp 中声明方法的使用

    1.在"<%!"和"%>"之间声明方法,该方法在整个JSP页面有效.可是该方法内定义的变量仅仅在该方法内有效. 这些方法将在Java程序片中被调用, ...

  5. python 数据描述字符串转整数

    q3 = int(float(q3.replace('万', '')) * 10000)

  6. Windows中的时区信息

    时区 Windows API 没有提供直接得到特定时区信息的功能,Windows 系统中的时区信息存储在注册表中下面的位置: HKEY_LOCAL_MACHINE     SOFTWARE      ...

  7. bzoj1805: [Ioi2007]Sail 船帆

    可以发现旗杆的顺序是没有用的,对于每列,它的答案是它的最大值mx*(mx+1)/2 高度由小到大排序旗杆,问题可以转化为在前h行选k个最小的值 考虑激情splay乱搞(我只会splay......) ...

  8. bzoj 2276 [ Poi 2011 ] Temperature —— 单调队列

    题目:https://www.lydsy.com/JudgeOnline/problem.php?id=2276 维护 l 递减的单调队列,队头的 l > 当前的 r 就出队,因为不能是连续一段 ...

  9. 异常值检测(Detecting Outliers)

    Most statistical approaches to outlier detection are based on building a probability distribution mo ...

  10. spark 操作Hive时遇到的问题

    To adjust logging level use sc.setLogLevel(newLevel). For SparkR, use setLogLevel(newLevel).17/10/14 ...