一、表介绍
表相当于文件,表中的一条记录就相当于文件的一行内容,不同的是,表中的一条记录有
对应的标题,称为表的字段
id,name,sex,age,birth 称为字段,其余的,一行内容称为一条记录
二、创建表
语法
create table 表名(
字段名 1 类型[(宽度) 约束条件],
字段名 2 类型[(宽度) 约束条件],
字段名 3 类型[(宽度) 约束条件]
);
#注意:
- 在同一张表中,字段名是不能相同
- 宽度和约束条件可选
- 字段名和类型是必须的
1.创建数据库
create database db2 charset utf8;
2.使用数据库
use db2;
3.创建 a1 表
create table a1(
id int,
name varchar(50),
age int(3)
);
4.插入表的记录
insert into a1 values
(1,'mjj',18),
(2,'wusir',28);
5.查询表的数据和结构
(1)查询 a1 表中的存储数据
select * from a1;
(2)查看 a1 表的结构
desc a1;
(3)查看表的详细结构
show create table a1\G;
6.复制表
(1)新创建一个数据库 db3
create database db3 charset utf8;
(2)使用 db3
use db3;
(3)复制 db2.a1 的表结构和记录
# 这就是复制表的操作(既复制了表结构,又复制了记录)
mysql> create table b1 select * from db2.a1;
(4)查看 db3.b1 中的数据和表结构
#再去查看 db3 文件夹下的 b1 表发现 跟 db2 文件下的 a1 表数据一样
mysql> select * from db3.b1;
如果只要表结构,不要记录
#在 db2 数据库下新创建一个 b2 表,给一个 where 条件,条件要求不成立,条件为 false,只拷贝表结构
mysql> create table b2 select * from db2.a1 where 1>5;
查看表结构:
# 查看表结构
mysql> desc b2;
+-------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| id | int(11) | YES | | NULL | |
| name | varchar(50) | YES | | NULL | |
| age | int(3) | YES | | NULL | |
+-------+-------------+------+-----+---------+-------+
3 rows in set (0.02 sec)
#查看表结构中的数据,发现是空数据
mysql> select * from b2;
Empty set (0.00 sec)
还有一种做法,使用 like(只拷贝表结构,不拷贝记录)
create table b3 like db2.a1;
**7.删除表:
**
drop table 表名;