mysql的快速创建空表_MySQL
Jun 01, 2016 pm 01:50 PMbitsCN.com
用什么方法可以创建空表?在MYSQL中有两种方法。
1、create table select ...
2、create table like ...
第一种很多人都知道,第二种却很少人用。
第一种有两个缺点
1、第一种会取消掉原来表的有些定义。
手册上是这么讲的:
Some conversion of data types might occur. For example,
the AUTO_INCREMENT attribute is not preserved,
and VARCHAR columns can become CHAR columns.
不过我测试过,只会取消自增属性!
2、引擎是系统默认引擎。
第二种就不会。
我们来看看例子:
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.01 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=utf8 |
+-------+-------------------------+
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.01 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=utf8 |
+----------+--------------------------------------------------+
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 |
+--------+---------------------------------------------------------+

Article chaud

Outils chauds Tags

Article chaud

Tags d'article chaud

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Réduisez l'utilisation de la mémoire MySQL dans Docker

Comment modifier une table dans MySQL en utilisant l'instruction ALTER TABLE?

Comment résoudre le problème de MySQL ne peut pas ouvrir la bibliothèque partagée

Exécutez MySQL dans Linux (avec / sans conteneur Podman avec phpmyadmin)

Exécuter plusieurs versions MySQL sur macOS: un guide étape par étape

Quels sont les outils de GUI MySQL populaires (par exemple, MySQL Workbench, PhpMyAdmin)?

Comment configurer le cryptage SSL / TLS pour les connexions MySQL?
