- 创建数据库
CREATE DATABASE test;
--IF NOT EXISTS(当...不存在的时候)
CREATE DATABASE IF NOT EXISTS test;
- 切换数据库
USE test;
--查看当前数据库
SHOW DATABASE();
- 创建表
-
数据类型有
数据类型 - 通常情况下,字段应该避免允许为NULL。不允许为NULL可以简化查询条件,加快查询速度,也利于应用程序读取数据后无需判断是否为NULL。
--AUTO_INCREMENT INT自增类型
CREATE TABLE classes (
id BIGINT NOT NULL AUTO_INCREMENT,
name VARCHAR(100) NOT NULL,
PRIMARY KEY (id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
- 创建外键
--增删改 表students
ALTER TABLE students
--增加外键约束 名为fk_class_id
ADD CONSTRAINT fk_class_id
--指定 class_id作为外键
FOREIGN KEY (class_id)
--关联到classes表的id列
REFERENCES classes (id);
--删除外键
ALTER TABLE students
DROP FOREIGN KEY fk_class_id;
--删除列
ALTER TABLE students
DROP COLUMN name;
- 创建索引
- 加快查询速度,效率取决于是否散列
ALTER TABLE students
--增加索引 索引名(索引列)
ADD INDEX idx_score (score);
ALTER TABLE students
--索引有多列可依次写上
ADD INDEX idx_name_score (name, score);
- 关键字 UNIQUE 为创建唯一约束(不能重复)
ALTER TABLE students
--添加唯一索引
ADD UNIQUE INDEX uni_name (name);
ALTER TABLE students
--只添加唯一约束,不添加索引
ADD CONSTRAINT uni_name UNIQUE (name);
- 插入记录
--插入记录
INSERT INTO classes(id, name) VALUES (1, '一班');
