MySQL操作数据库和表的基本语句(DDL)
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)的更多相关文章
- MySQL操作数据库和表的基本语句(DDL
1.创建数据库: CREATE DATABASE 数据库名; eg.CREATE DATABASE test_ddl;122.创建表 CREATE TABLE 表名(列名 数据类型 约束,...); ...
- MySQL操作数据库和表的常用命令新手教程
1.查看数据库 获取服务器上的数据库列表通常很有用.执行show databases;命令就可以搞定. mysql> show databases; 2.创建数据库 mysql> crea ...
- MySQL处理数据库和表的常用命令
MySQL处理数据库和表的常用命令 [导读] 学习如何管理和导航MySQL数据库和表是要掌握的首要任务之一,下面的内容将主要对MySQL的数据库和表的一些常用命令进行总结,一些我们不得不掌握的命令,一 ...
- 第16课-数据库开发及ado.net-数据库SQl,创建数据库和表,增删改语句,约束,top和Distinct,聚合函数介绍
第16课-数据库开发及ado.net 数据库SQl,创建数据库和表,增删改语句,约束,top和Distinct,聚合函数介绍 SQL语句入门(脚本.命令) SQL全名是结构化查询语言(Structur ...
- mysql查看数据库和表的占用空间大小
mysql查看数据库和表的占用空间大小 第一部分-任务 将线上db,导出后,导入到office db 一. 两种方案: 1,将数据直接从online-->office,通过mysqldump ...
- 创建数据库和表的SQL语句【转】
创建数据库和表的SQL语句 转至http://www.cnblogs.com/philanthr/archive/2011/08/09/2132398.html 创建数据库的SQL语句: 1 crea ...
- PHP连接MYSQL操作数据库
PHP连接MYSQL操作数据库 <?php $con = mysql_connect("localhost","root",""); ...
- MySQL不同数据库之间表的简单同步
MySQL不同数据库之间表的简单同步,实用轻量级数据如下案列展示:例如我现在主库上面有users .tenants两张表需要同步到备库上面主库1.确认主库数据条数 select count(*) fr ...
- Oracle数据库查看表空间sql语句
转: Oracle数据库查看表空间sql语句 2018-09-03 15:49:51 兰海泽 阅读数 6212 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出 ...
随机推荐
- saltstack源码-启动3-config.py配置文件加载
#目标文件位置/usr/lib/python2.6/site-packages/salt/config.py#这个文件加载配置文件的模块.master和minion的配置文件加载都是在这个模块里面完成 ...
- mysqlnd cannot connect to MySQL 4.1+ using old authentication
报这个错误主要是因为mysql使用了老的密码格式,而程序要求使用新的格式导致的,解决办法: SET old_passwords = 0; UPDATE mysql.user SET Password ...
- 【141】Adobe Acrobat技巧
目录: 去除PDF的水印 待定 待定 待定 待定 待定 待定 待定 1. 批量去除PDF文件的水印 用Adobe Acrobat打开PDF文件之后,右侧选择工具>页面>水印>删除,可 ...
- Python2.7 Queue模块学习
前面了解了一下threading,发现一般都是和queue模块配合使用的,queue产生一个队列,队列模式有3种,针对这三种队列分别有三个构造函数: 1 FIFO队列先进先出:class Queue. ...
- zoj 2760 How Many Shortest Path【最大流】
不重叠最短路计数. 先弗洛伊德求一遍两两距离(其实spfa或者迪杰斯特拉会更快但是没必要懒得写),然后设dis为st最短距离,把满足a[s][u]+b[u][v]+a[v][t]==dis的边(u,v ...
- python删除列表中元素的方法
删除列表中元素的三种方法-remove.pop.del 1 1.remove: 删除单个元素,删除首个符合条件的元素,按值删除 2 举例说明: 3 >>> str=[1,2,3,4, ...
- [ZPG TEST 115] 字符串【归类思想】
pdf效果太差,转成word效果依旧差,只好转成jpg传了. 这一题用到了“归类”的思想,令s(i, a)表示前i个字体,字符a出现的次数.那么ans一定等于一个 ( s(i, a) - s(j, ...
- Floyd+限制路径步数(快速幂优化)
POJ 3613 Cow Relays 最短路可以采用Floyd来计算,但是限制时间在1s内,估计直接写会超时,所以要用到快速幂来优化. 快速幂的思想是:xy=xy/2∗2" role=&q ...
- Service官方教程(7)Bound Service示例之1-同进程下直接继承Service
Extending the Binder class If your service is used only by the local application and does not need t ...
- Android Dialogs(5)[正常显示dlg,将Fragment显示为dialog,将Aty显示为dlg,嵌入],关闭Dialog
Showing a Dialog When you want to show your dialog, create an instance of your DialogFragment and ca ...