显示所有数据库
show databases;
创建数据库
create database testdb;
使用数据库
use testdb;
查看当前正在使用的数据库
select database();
创建数据库中相关数据表
-- 清理历史表:若存在同名表则删除,避免结构冲突
DROP TABLE IF EXISTS EMP;
DROP TABLE IF EXISTS DEPT;
DROP TABLE IF EXISTS SALGRADE;-- 创建部门表(DEPT)
CREATE TABLE DEPT(DEPTNO int(2) NOT NULL COMMENT '部门编号(主键),唯一标识部门',DNAME VARCHAR(14) COMMENT '部门名称(中文)',LOC VARCHAR(13) COMMENT '部门所在城市(中文)',PRIMARY KEY (DEPTNO)
) COMMENT '部门信息表:存储公司各部门基础信息';-- 创建员工表(EMP)
CREATE TABLE EMP(EMPNO int(4) NOT NULL COMMENT '员工编号(主键),唯一标识员工',ENAME VARCHAR(10) COMMENT '员工姓名(中文)',JOB VARCHAR(9) COMMENT '员工职位(中文)',MGR INT(4) COMMENT '上级员工编号(关联EMP.EMPNO,总裁为NULL)',HIREDATE DATE DEFAULT NULL COMMENT '入职日期(YYYY-MM-DD)',SAL DOUBLE(7,2) COMMENT '月薪(保留2位小数)',COMM DOUBLE(7,2) COMMENT '销售提成(非销售岗为NULL)',DEPTNO INT(2) COMMENT '所属部门编号(关联DEPT.DEPTNO)',PRIMARY KEY (EMPNO)
) COMMENT '员工信息表:存储员工个人及岗位相关数据';-- 创建薪资等级表(SALGRADE)
CREATE TABLE SALGRADE(GRADE INT COMMENT '薪资等级(1-5级)',LOSAL INT COMMENT '该等级最低薪资',HISAL INT COMMENT '该等级最高薪资'
) COMMENT '薪资等级表:定义薪资范围与等级对应关系';-- 插入部门数据
INSERT INTO DEPT (DEPTNO, DNAME, LOC)
VALUES
(10, '会计部', '纽约') COMMENT '10号部门:会计职能',
(20, '研究部', '达拉斯') COMMENT '20号部门:研发职能',
(30, '销售部', '芝加哥') COMMENT '30号部门:销售职能',
(40, '运营部', '波士顿') COMMENT '40号部门:运营职能';-- 插入员工数据
INSERT INTO EMP (EMPNO, ENAME, JOB, MGR, HIREDATE, SAL, COMM, DEPTNO)
VALUES
(7369, '史密斯', '职员', 7902, '1980-12-17', 800, NULL, 20) COMMENT '研究部职员,上级为福特',
(7499, '艾伦', '销售员', 7698, '1981-02-20', 1600, 300, 30) COMMENT '销售部销售员,提成300',
(7521, '沃德', '销售员', 7698, '1981-02-22', 1250, 500, 30) COMMENT '销售部销售员,提成500',
(7566, '琼斯', '经理', 7839, '1981-04-02', 2975, NULL, 20) COMMENT '研究部经理,上级为总裁',
(7654, '马丁', '销售员', 7698, '1981-09-28', 1250, 1400, 30) COMMENT '销售部销售员,提成1400',
(7698, '布莱克', '经理', 7839, '1981-05-01', 2850, NULL, 30) COMMENT '销售部经理,上级为总裁',
(7782, '克拉克', '经理', 7839, '1981-06-09', 2450, NULL, 10) COMMENT '会计部经理,上级为总裁',
(7788, '斯科特', '分析师', 7566, '1987-04-19', 3000, NULL, 20) COMMENT '研究部分析师,上级为琼斯',
(7839, '金', '总裁', NULL, '1981-11-17', 5000, NULL, 10) COMMENT '公司总裁,无上级',
(7844, '特纳', '销售员', 7698, '1981-09-08', 1500, 0, 30) COMMENT '销售部销售员,提成0',
(7876, '亚当斯', '职员', 7788, '1987-05-23', 1100, NULL, 20) COMMENT '研究部职员,上级为斯科特',
(7900, '詹姆斯', '职员', 7698, '1981-12-03', 950, NULL, 30) COMMENT '销售部职员,上级为布莱克',
(7902, '福特', '分析师', 7566, '1981-12-03', 3000, NULL, 20) COMMENT '研究部分析师,上级为琼斯',
(7934, '米勒', '职员', 7782, '1982-01-23', 1300, NULL, 10) COMMENT '会计部职员,上级为克拉克';-- 插入薪资等级数据
INSERT INTO SALGRADE (GRADE, LOSAL, HISAL)
VALUES
(1, 700, 1200) COMMENT '1级:基层职员薪资范围',
(2, 1201, 1400) COMMENT '2级:资深职员薪资范围',
(3, 1401, 2000) COMMENT '3级:销售员薪资范围',
(4, 2001, 3000) COMMENT '4级:经理/分析师薪资范围',
(5, 3001, 9999) COMMENT '5级:总裁薪资范围';-- 提交事务,保存所有数据
COMMIT COMMENT '提交初始化数据';
查看表是否创建成功
show tables;
查看表的结构
语法:desc或describe,语法格式:desc或describe +表名
简单的查询一下表中的数据