From: http://blog.163.com/yaoyingying681@126/blog/static/109463675201191173221759/

MySQL 添加列,修改列,删除列的sql语句写法

ALTER TABLE:添加,修改,删除表的列,约束等表的定义。

  • 查看列:desc 表名;
  • 修改表名:alter table t_book rename to bbb;
  • 添加列:alter table 表名 add column 列名 varchar(30);
  • 删除列:alter table 表名 drop column 列名;
  • 修改列名: alter table bbb change nnnnn hh int;
  • 修改列属性:alter table t_book modify name varchar(22);

一,复制表结构
方法1:
mysql> create table a like users;         //复制表结构 
Query OK, 0 rows affected (0.50 sec)  
mysql> show tables;  
+----------------+  
| Tables_in_test |  
+----------------+  
| a              |  
| users          |  
+----------------+  
2 rows in set (0.00 sec) 
mysql> create table a like users;         //复制表结构
Query OK, 0 rows affected (0.50 sec)
mysql> show tables;
+----------------+
| Tables_in_test |
+----------------+
| a              |
| users          |
+----------------+
2 rows in set (0.00 sec)

方法2:
mysql> create table b select * from users limit 0;   //复制表结构 
Query OK, 0 rows affected (0.00 sec)  
Records: 0  Duplicates: 0  Warnings: 0  
mysql> show tables;  
+----------------+  
| Tables_in_test |  
+----------------+  
| a              |  
| b              |  
| users          |  
+----------------+  
3 rows in set (0.00 sec) 
mysql> create table b select * from users limit 0;   //复制表结构
Query OK, 0 rows affected (0.00 sec)
Records: 0  Duplicates: 0  Warnings: 0
mysql> show tables;
+----------------+
| Tables_in_test |
+----------------+
| a              |
| b              |
| users          |
+----------------+
3 rows in set (0.00 sec)

方法3:
mysql> show create table users\G;          //显示创表的sql  这里也可以用 desc users;显示表的结构
*************************** 1. row ***************************  
Table: users  
Create Table: CREATE TABLE `users` (       //改表名 
`ID` bigint(20) unsigned NOT NULL AUTO_INCREMENT,  
`user_name` varchar(60) NOT NULL DEFAULT '',  
`user_pass` varchar(64) NOT NULL DEFAULT '',  
PRIMARY KEY (`ID`)  
) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8  //改auto_increment 
1 row in set (0.00 sec) 
mysql> show create table users\G;          //显示创表的sql
*************************** 1. row ***************************
Table: users
Create Table: CREATE TABLE `users` (       //改表名
`ID` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
`user_name` varchar(60) NOT NULL DEFAULT '',
`user_pass` varchar(64) NOT NULL DEFAULT '',
PRIMARY KEY (`ID`)
) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8  //改auto_increment
1 row in set (0.00 sec)把sql语句copy出来,改一下表名和atuo_increment,然后在执行一下。
二,复制表数据,以及表结构
方法1:
mysql> create table c select * from users;      //复制表的sql 
Query OK, 4 rows affected (0.00 sec)  
Records: 4  Duplicates: 0  Warnings: 0 
mysql> create table c select * from users;      //复制表的sql
Query OK, 4 rows affected (0.00 sec)
Records: 4  Duplicates: 0  Warnings: 0

方法2:
mysql> create table d select user_name,user_pass from users where id=1;  
Query OK, 1 row affected (0.00 sec)  
Records: 1  Duplicates: 0  Warnings: 0 
mysql> create table d select user_name,user_pass from users where id=1;
Query OK, 1 row affected (0.00 sec)
Records: 1  Duplicates: 0  Warnings: 0上面的2种方法,方便,快捷,灵活性强。
方法3:
先创建一个空表, INSERT INTO 新表 SELECT * FROM 旧表 ,或者
INSERT INTO 新表(字段1,字段2,…….) SELECT 字段1,字段2,…… FROM 旧表
这种方法不是很方便,也是我以前经常用的。

mysql 复制表结构、表数据的方法的更多相关文章

  1. 一起学Hive——总结复制Hive表结构和数据的方法

    在使用Hive的过程中,复制表结构和数据是很常用的操作,本文介绍两种复制表结构和数据的方法. 1.复制非分区表表结构和数据 Hive集群中原本有一张bigdata17_old表,通过下面的SQL语句可 ...

  2. MySQL 复制表(表结构、表结构和数据)

    MySQL 中使用 命令行 复制表结构及数据的方法主要有以下几种: 1.只复制表结构 CREATE TABLE new_table SELECT * FROM old_table WHERE 1=2: ...

  3. MySQL复制表结构表数据

    MySQL复制表结构 表数据 1.复制表结构及数据到新表CREATE TABLE 新表 SELECT * FROM 旧表这种方法会将oldtable中所有的内容都拷贝过来,当然我们可以用delete ...

  4. AJPFX总结mysql复制表结构,表数据

    1.复制表结构及数据到新表CREATE TABLE 新表 SELECT * FROM 旧表 这种方法会将oldtable中所有的内容都拷贝过来,当然我们可以用delete from newtable; ...

  5. mysql复制表结构和数据

    1.复制表结构: create table newName like oldName;//可以复制所有结构. 或者: create table newName select * from oldNam ...

  6. mysql赋值表结构和数据

    mysql中用命令行复制表结构的方法主要有一下几种: 1.只复制表结构到新表 CREATE TABLE 新表 SELECT * FROM 旧表 WHERE 1=2 或者 CREATE TABLE 新表 ...

  7. 复制表结构和数据SQL语句(转)

    http://www.cnblogs.com/zhengxu/articles/2206894.html 1.复制表结构及数据到新表 CREATE TABLE 新表 SELECT * FROM 旧表 ...

  8. mysql数据恢复:.frm和.ibd,恢复表结构和数据

    mysql数据恢复:.frm和.ibd,恢复表结构和数据 一.恢复表结构 二.恢复表数据 相关内容原文地址: CSDN:她说巷尾的樱花开了:mysql根据.frm和.ibd文件恢复表结构和数据 博客园 ...

  9. SQL Server表结构和数据导入到MySQL

    借助的工具:Navicat for MySQL,链接:http://pan.baidu.com/s/1kVCw8IF 密码:g927 可以很明确的肯定,主键和自增列是没办法导入的,只能是表结构和数据. ...

  10. MySQL 如何只导出 指定的表 的表结构和数据 ( 转 )

    MySQL 如何只导出 指定的表 的表结构和数据 ( 转 ) 2011-01-04 15:03:33 分类: MySQL MySQL 如何只导出 指定的表 的表结构和数据 导出更个库的表结构如下:my ...

随机推荐

  1. shell 脚本技巧

    1.Give ECHO colors see see! NORMAL=$(tput sgr0) GREEN=$(tput setaf ; tput bold) YELLOW=$(tput setaf ...

  2. Python底层socket库

    Python底层socket库将Unix关于网络通信的系统调用对象化处理,是底层函数的高级封装,socket()函数返回一个套接字,它的方法实现了各种套接字系统调用.read与write与Python ...

  3. multipath test

    [root@rac02 mnt]# multipath -llmpathb (36005076300810df6f800000000000005) dm-3 IBM,2145size=50G feat ...

  4. Microsoft Visual Studio 2012注册密钥

    Microsoft Visual Studio Ultimate 2012 旗舰版 有效注册密钥:YKCW6-BPFPF-BT8C9-7DCTH-QXGWCMicrosoft Visual Studi ...

  5. SQL 事务隔离学习

    select --* request_session_id as spid, resource_type as restype, resource_database_id as dbid, DB_NA ...

  6. 【python】global

    #!/usr/bin/python # Filename: func_global.py def func(): global x print 'x is', x x = 2 print 'Chang ...

  7. 浅谈mybatis中的#和$的区别

    1. #将传入的数据都当成一个字符串,会对自动传入的数据加一个双引号.如:order by #user_id#,如果传入的值是111,那么解析成sql时的值为order by "111&qu ...

  8. STM32F4读写内部FLASH【使用库函数】

    STM32F4Discovery开发帮使用的STM32F407VGT6芯片,内部FLASH有1M之多.平时写的代码,烧写完之后还有大量的剩余.有效利用这剩余的FLASH能存储不少数据.因此研究了一下S ...

  9. hive与hbase整合过程

    实现目标 Hive可以实时查询Hbase中的数据. hive中的表插入数据会同步更新到hbase对应的表中. 可以将hbase中不同的表中的列通过 left 或 inner join 方式映射到hiv ...

  10. mysql删造成表死锁研究

    现在互联网公司对于代码的管理越来越规范,一般都会有3个环境:开发环境,测试环境,正式环境.在开发环境进行开发,开发完成后将代码提交到测试环境进行测试,测试完毕后上线到正式环境. 今天在正式环境上遇到一 ...