目录
day01建表
1)创建数据库 istester
2)查看数据库创建是否成功
day02 创建表 istester 和 表 idoxu
创建istester和idoxu表
CREATE TABLE istester (
id INT(10) NOT NULL UNIQUE PRIMARY KEY ,
uname VARCHAR(20) NOT NULL ,
sex VARCHAR(4) ,
birth YEAR,
department VARCHAR(20) ,
address VARCHAR(50) ,
idoxu VARCHAR(20)
);
CREATE TABLE idoxu (
id INT(10) NOT NULL UNIQUE PRIMARY KEY AUTO_INCREMENT ,
stu_id INT(10) NOT NULL ,
c_name VARCHAR(20) ,
istester VARCHAR(50) ,
grade INT(10)
);
day03复制表结构
1)复制istester表结构,创建新表istester2
create table istester2 like istester ;
或
create table idoxu2 as select * from idoxu where 2=1;
2)复制idoxu表结构和数据,创建新表idoxu3
create table idoxu3 as select * from idoxu
3)复制idoxu表结构的 id,stu_id,istester三个字段,创建新表idoxu3
create table idoxu3 as select id,stu_id,istester from idoxu where 1<>1;
where 1 <> 1 用于只复制表结构,不取数据
create table t2 as select * from t1 where 1 <> 1;
分析:
(1)create table t2 as select * from t1,这个动作就会先将t1 的表结构,也就是有哪些字段啊复制到 t1,此时表框架有了,还没内容;
(2)没有 where 1 <> 1 条件的话,就是将t1表整个复制给t2,一模一样的字段和数据,这个问题不大;
(3)加了 where 1 <> 1,这个条件永远为假,所以用 t1表中的数据永远不会复制到 t2里去,此时的结果就是,t2 就是一个空架子;
明白了吧,这样读取表的结构,而不用考虑表中的数据,节省了内存,也可以不用保存结果集,用于快速建表。
原文链接:MySql为什么要用where 1=1和where 1<>1_赵广陆的博客-优快云博客
day04 删除表、查看表
1)删除表 istester2
drop table istester2 ;
2)同时删除表idoxu2和idoxu3
drop table idoxu2.idoxu3;
3)查看还有哪些表
show table