数据表

  • 数据表是数据库里面的一张或多张相关联的表,主要储存各种数据
  • 操作前请使用 use [数据库名]; 选择使用该数据库

创建数据表

create table test(
     id int unsigned unique primary key not null auto_increment,
     name varchar(30) not null,
     age tinyint unsigned,
     high decimal(5,2),
     gender enum('boy','girl','secrecy'),
     cls_id int unsigned
     );
  • create table test 创建一张数据表,名为test
  • test数据表里面有字段id,类型为 int unsigned,约束 unique不能重复,primary key为主键,not mull 不能为空,auto_increment为自动增长
  • test数据表里面有字段name,类型为 varchar(30),约束 not null不能为空
  • test数据表里面有字段age,类型为 tinyint unsigned
  • test数据表里面有字段high,类型为 decimal(5,2)
  • test数据表里面有字段gender,类型为 enum
  • test数据表里面有字段cls_id, 类型为 int unsigned

查看数据表

show tables;

查看数据表的结构

desc test;
FieldTypeNullKeyDefaultExtra
idint(10) unsignedNOPRINULLauto_increment
namevarchar(30)NO NULL
agetinyint(3) unsignedYES NULL
highdecimal(5,2)YES NULL
genderenum('boy','girl','secrecy')YES NULL
cls_idint(10) unsignedYES NULL
  • Field 为创建的字段
  • Type 为数据类型
  • Null 约束,是否为空
  • Key 约束,是否主,外键
  • Default 约束,默认值
  • Extra 为自动增长

数据表中插入数据

insert into test values(0,'zhangsan',18,168,'boy',2)

查询数据表所有字段

select * from test;
idnameagehighgendercls_id
1zhangsan18168.00boy2

修改表结构

- 添加字段
alter table test add brithday datetime;
idnameagehighgendercls_idbrithday
1zhangsan18168.00boy2NULL
- 修改字段[不重命名版]
alter table test modify brithday date; 
# 修改字段 brithday 数据类型为date

- 修改字段[重命名版]
alter table test change brithday brith date default "2002-01-01"
# 修改字段 brithday 为brith , date 默认为 ‘2002-01-01’

- 删除字段
alter table [表名] drop [列名];
alter table test drop brith;

- 删除表中的数据,不删除表
delete from test where id > 2 ;
#删除test中 id 字段大于2的

- 删除表
drop table test;

查看表的创建语句

show create table test;