| 订阅 | 在线投稿
分享
 
 
当前位置: 王朝网络 >> mysql >> MySQL中两种快速创建空表的方式的区别
 

MySQL中两种快速创建空表的方式的区别

2008-06-12 07:23:59 编辑來源:互联网 繁體版 评论
 
 
  在MySQL中有两种方法

  1、create table t_name select ...

  2、create table t_name like ...

  第一种会取消掉原来表的有些定义,且引擎是系统默认引擎。

  手册上是这么讲的:Some conversion of data types might occur. For example, the AUTO_INCREMENT attribute is not preserved, and VARCHAR columns can become CHAR columns.

  第二种就完全复制原表。

  先建立测试表:

  mysql> create database dbtest;

  Query OK, 1 row affected (0.03 sec)

  mysql> use dbtest;

  Database changed

  mysql> create table t_old

  -> (

  -> id serial,

  -> content varchar(8000) not null,

  -> `desc` varchar(100) not null)

  -> engine innodb;

  Query OK, 0 rows affected (0.04 sec)

  mysql> show create table t_old;

  +-------+-------------------------------------------------+

  | Table | Create Table |

  +-------+------------------------------------------------+

  | t_old | CREATE TABLE `t_old` (

  `id` bigint(20) unsigned NOT NULL auto_increment,

  `content` varchar(8000) NOT NULL,

  `desc` varchar(100) NOT NULL,

  UNIQUE KEY `id` (`id`)

  ) ENGINE=InnoDB DEFAULT CHARSET=latin1 |

  +-------+----------------------------------------------------+

  1 row in set (0.00 sec)

  第一种方式:

  mysql> create table t_select select * from t_old where 1 = 0;

  Query OK, 0 rows affected (0.04 sec)

  Records: 0 Duplicates: 0 Warnings: 0

  mysql> show create table t_select;

  +----------+--------------------------------------------+

  | Table | Create Table +----------+---------------------------------------------+

  | t_select | CREATE TABLE `t_select` (

  `id` bigint(20) unsigned NOT NULL default '0',

  `content` varchar(8000) NOT NULL,

  `desc` varchar(100) NOT NULL

  ) ENGINE=MyISAM DEFAULT CHARSET=latin1 |

  +----------+-------------------------------------------+

  1 row in set (0.00 sec)

  第二种方式:

  mysql> create table t_like like t_old;

  Query OK, 0 rows affected (0.02 sec)

  mysql> show create table t_like;

  +--------+-------------------------------------------------+

  | Table | Create Table |

  +--------+-------------------------------------------------+

  | t_like | CREATE TABLE `t_like` (

  `id` bigint(20) unsigned NOT NULL auto_increment,

  `content` varchar(8000) NOT NULL,

  `desc` varchar(100) NOT NULL,

  UNIQUE KEY `id` (`id`)

  ) ENGINE=InnoDB DEFAULT CHARSET=latin1 |

  +--------+-------------------------------------------------+

  1 row in set (0.00 sec)

  mysql>
 
 
 
 
上一篇《加速PHP动态网站 关于MySQL索引分析优化》
下一篇《Lunix环境下MySQL数据库的自动备份脚本》
 
 
 
 
 
 
日版宠物情人插曲《Winding Road》歌词

日版宠物情人2017的插曲,很带节奏感,日语的,女生唱的。 最后听见是在第8集的时候女主手割伤了,然后男主用嘴帮她吸了一下,插曲就出来了。 歌手:Def...

兄弟共妻,我成了他们夜里的美食

老钟家的两个儿子很特别,就是跟其他的人不太一样,魔一般的执着。兄弟俩都到了要结婚的年龄了,不管自家老爹怎么磨破嘴皮子,兄弟俩说不娶就不娶,老父母为兄弟两操碎了心...

如何磨出破洞牛仔裤?牛仔裤怎么剪破洞?

把牛仔裤磨出有线的破洞 1、具体工具就是磨脚石,下面垫一个硬物,然后用磨脚石一直磨一直磨,到把那块磨薄了,用手撕开就好了。出来的洞啊很自然的。需要猫须的话调几...

我就是扫描下图得到了敬业福和爱国福

先来看下敬业福和爱国福 今年春节,支付宝再次推出了“五福红包”活动,表示要“把欠大家的敬业福都还给大家”。 今天该活动正式启动,和去年一样,需要收集“五福”...

冰箱异味产生的原因和臭味去除的方法

有时候我们打开冰箱就会闻到一股异味,冰箱里的这种异味是因为一些物质发出的气味的混合体,闻起来让人恶心。 产生这些异味的主要原因有以下几点。 1、很多人有这种习...

 
 
 
在MySQL中有两种方法 1、create table t_name select ... 2、create table t_name like ... 第一种会取消掉原来表的有些定义,且引擎是系统默认引擎。 手册上是这么讲的:Some conversion of data types might occur. For example, the AUTO_INCREMENT attribute is not preserved, and VARCHAR columns can become CHAR columns. 第二种就完全复制原表。 先建立测试表: mysql> create database dbtest; Query OK, 1 row affected (0.03 sec) mysql> use dbtest; Database changed mysql> create table t_old -> ( -> id serial, -> content varchar(8000) not null, -> `desc` varchar(100) not null) -> engine innodb; Query OK, 0 rows affected (0.04 sec) mysql> show create table t_old; +-------+-------------------------------------------------+ | Table | Create Table | +-------+------------------------------------------------+ | t_old | CREATE TABLE `t_old` ( `id` bigint(20) unsigned NOT NULL auto_increment, `content` varchar(8000) NOT NULL, `desc` varchar(100) NOT NULL, UNIQUE KEY `id` (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1 | +-------+----------------------------------------------------+ 1 row in set (0.00 sec) 第一种方式: mysql> create table t_select select * from t_old where 1 = 0; Query OK, 0 rows affected (0.04 sec) Records: 0 Duplicates: 0 Warnings: 0 mysql> show create table t_select; +----------+--------------------------------------------+ | Table | Create Table +----------+---------------------------------------------+ | t_select | CREATE TABLE `t_select` ( `id` bigint(20) unsigned NOT NULL default '0', `content` varchar(8000) NOT NULL, `desc` varchar(100) NOT NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1 | +----------+-------------------------------------------+ 1 row in set (0.00 sec) 第二种方式: mysql> create table t_like like t_old; Query OK, 0 rows affected (0.02 sec) mysql> show create table t_like; +--------+-------------------------------------------------+ | Table | Create Table | +--------+-------------------------------------------------+ | t_like | CREATE TABLE `t_like` ( `id` bigint(20) unsigned NOT NULL auto_increment, `content` varchar(8000) NOT NULL, `desc` varchar(100) NOT NULL, UNIQUE KEY `id` (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1 | +--------+-------------------------------------------------+ 1 row in set (0.00 sec) mysql>
󰈣󰈤
 
 
 
  免责声明:本文仅代表作者个人观点,与王朝网络无关。王朝网络登载此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述,其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
华丽的模特拍摄(8)
华丽的模特拍摄(7)
华丽的模特拍摄(6)
华丽的模特拍摄(5)
八里沟
朝阳宫
天下峨眉 云上金顶
老家(四)
 
>>返回首页<<
 
 
 为你推荐
 
 
 
 转载本文
 UBB代码 HTML代码
复制到剪贴板...
 
 热帖排行
 
 
 
 
©2005- 王朝网络 版权所有