一、表的思维
仓库——>数据库
仓库下面有表
数据在表中
二、引入数据库并查看数据库中的表
创建一个数据库:
CREATE DATABASE
IF
NOT EXISTS 'school' charset = gbk;
查看数据库的创建方式:
SHOW CREATE school;
使用单个数据库:
use 数据库名;
USE school;
显示所有的表:
SHOW TABLES;
三、创建表
create table 表名(
字段名 类型(长度),
字段名 类型(长度)
);
CREATE TABLE student(
id INT,
name VARCHAR(30),
age INT
);
显示表:
SHOW TABLES;
较为标准的方式:
auto_increment(自动增长)
[id 按照 int 类型自动增长]
primary key(主键)
[说明当前字段是唯一的]
comment(注释)
[注释字段含义]
not null(非空)
[说明字段不能为空值]
default(为空时解释)
[字段为空时显示内容]
engine=innodb(数据库引擎)
[使用的数据库引擎]
create table if not exists 表名(
字段名 类型(长度) auto_increment primary key comment '注释',
字段名 类型(长度) not null comment '注释',
字段名 类型(长度) comment '注释',
字段名 类型(长度) default '空值内容' comment '注释'
)engine=innodb;
CREATE TABLE
IF
NOT EXISTS teacher (
id INT AUTO_INCREMENT PRIMARY KEY COMMENT '主键id',
NAME VARCHAR ( 30 ) NOT NULL COMMENT '教师姓名',
phone VARCHAR ( 20 ) COMMENT '电话号码',
address VARCHAR ( 100 ) DEFAULT '暂时未知' COMMENT '住址'
) ENGINE = INNODB;
查看如何创建表的:
SHOW CREATE TABLE teacher;
四、查看表结构
列出表结构:
desc 表名;
DESC teacher;
五、删除表
drop table 表名;
DROP TABLE student;
如果表不存在,
进行删除,要求不报错:
drop table if exists 表名;
DROP TABLE IF EXISTS S;
删除多张表:
drop table if exists 表名1,表名2,表名3;
DROP TABLE
IF
EXISTS oooo,
stu,
jjj;
六、修改表
创建一个示例表:
CREATE TABLE 表名( 字段名 类型(长度), ) ;
CREATE TABLE student(
id int(4)
);
查看表的创建方式:
SHOW CREATE TABLE student;
查看表的结构:
DESC student;
修改表:
- 添加字段
alter table 表名 add 字段名 类型(长度);
ALTER TABLE student ADD NAME VARCHAR ();
-
在指定的位置添加
alter table 表名 add 字段名 类型(长度) after 字段名;
ALTER TABLE student ADD gender VARCHAR ( 1 ) AFTER NAME;
-
在表头位置添加
alter table 表名 add 字段名 类型(长度) first;
ALTER TABLE student ADD address VARCHAR ( 100 ) FIRST;
-
删除某个字段
alter table 表名 drop 字段名;
ALTER TABLE student DROP address;
-
更改字段类型与字段名
alter table 表名 change 改前字段名 改后字段名 类型(长度);
ALTER TABLE student CHANGE name changeName VARCHAR ( 20 );
-
只更改字段类型
alter table 表名 modify 字段名 类型(长度);
ALTER TABLE student MODIFY changeName INT ( 13 );
- 更改表名
(练习,并不规范,表名不能为复数)
alter table 表名 rename to 字段名;
ALTER TABLE student RENAME TO students;
练完赶紧改回来!
ALTER TABLE students RENAME TO student;