zoukankan      html  css  js  c++  java
  • create table select 和 create table like 比较

    create table select 语法:

    CREATE [TEMPORARY] TABLE [IF NOT EXISTS] tbl_name

        [(create_definition,...)]

        [table_options] [select_statement]

    create table like 语法:

    CREATE [TEMPORARY] TABLE [IF NOT EXISTS] tbl_name

        [(] LIKE old_tbl_name [)];

    测试过程:

    CREATE TABLE `employees` (
      `id` int(11) NOT NULL AUTO_INCREMENT,
      `name` varchar(24) NOT NULL DEFAULT '' COMMENT '姓名',
      `age` int(11) NOT NULL DEFAULT '0' COMMENT '年龄',
      `position` varchar(20) NOT NULL DEFAULT '' COMMENT '职位',
      `hire_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '入职时间',
      PRIMARY KEY (`id`),
      KEY `idx_name_age_position` (`name`,`age`,`position`)
    ) ENGINE=InnoDB AUTO_INCREMENT=100004 DEFAULT CHARSET=utf8 COMMENT='员工记录表';

    1、select 方式创建表

    create table employees_1 select * from employees;

    创建后的表结构 和表内容

    CREATE TABLE `employees_1` (
      `id` int(11) NOT NULL DEFAULT '0',
      `name` varchar(24) NOT NULL DEFAULT '' COMMENT '姓名',
      `age` int(11) NOT NULL DEFAULT '0' COMMENT '年龄',
      `position` varchar(20) NOT NULL DEFAULT '' COMMENT '职位',
      `hire_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '入职时间'
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8;

     2、like方式创建表

    create table employees_2 like employees;
    CREATE TABLE `employees_2` (
      `id` int(11) NOT NULL AUTO_INCREMENT,
      `name` varchar(24) NOT NULL DEFAULT '' COMMENT '姓名',
      `age` int(11) NOT NULL DEFAULT '0' COMMENT '年龄',
      `position` varchar(20) NOT NULL DEFAULT '' COMMENT '职位',
      `hire_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '入职时间',
      PRIMARY KEY (`id`),
      KEY `idx_name_age_position` (`name`,`age`,`position`)
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='员工记录表';

     3、结论

    create table select:会将原表中的数据完整复制一份,但表结构中的索引会丢失。

    create table like:只会完整复制原表的建表语句,但不会复制数据

  • 相关阅读:
    第一期站立会议7(11.21 个人)
    第一期站立会议6(11.20 个人)
    第一期站立会议5(11.19个人)
    第一期站立会议4(11.18个人)
    第一期站立会议3(11.17个人)
    第一期站立会议2(11.16个人)
    第一期站立会议1(11.15 个人)
    第二阶段第三次站立会议
    对第一阶段提出意见的总结及改进方案
    第二阶段第二次站立会议
  • 原文地址:https://www.cnblogs.com/zouhong/p/14688948.html
Copyright © 2011-2022 走看看