数据库的实例化操作——建库建表录入信息。

本文章共分为三部分,通过建立员工部门的信息来熟练掌握数据库的单表查询、多表查询。

员工信息如下:

Dept表(部门)

                                                                                                                                                                           Dept部门表结构

字段

类型

描述

deptno

mediumint(8)

部门编号 PK

dname

varchar(20)

部门名称 unique

loc

varchar(13)

部门位置

 emp表(员工)

                                                                                                                                                                              Emp表结构

字段

类型

描述

empno

mediumint(9)

员工编号 PK

ename

varchar(20)

员工姓名 not null

job

varchar(9)

员工职位

mgr

mediumint(9)

领导编号 FK

hiredate

date

雇佣日期

sal

decimal(7,2)

员工工资

comm

decimal(7,2)

员工奖金

deptno

mediumint(9)

员工所在部门 FK

 salgrade(工资等级表)

                                                                                              Salgrade工资等级表结构

字段

类型

描述

grade

mediumint(8)

工资等级

losal

decimal(17,2)

最低工资

hisal

decimal(17,2)

最高工资

 bonus奖金表

Salgrade工资等级表结构

字段

类型

描述

grade

mediumint(8)

工资等级

losal

decimal(17,2)

最低工资

hisal

decimal(17,2)

最高工资

新建Dept表(部门)

建库建表方法在看这:数据库的基本操作

create table DEPT(
    deptno mediumint(8) primary key,
    dname varchar(20) unique,
    loc varchar(13)
);

新建emp员工表

create table EMP(
    empno mediumint(9) primary key,
    ename varchar(20) not null,
    job varchar(9),
    mgr mediumint(9),
    hiredate date,
    sal decimal(7,2),
    comm decimal(7,2),
    deptno mediumint(9),
foreign key(deptno) references DEPT(deptno)
);
alter table emp add constraint fk_em foreign key(mgr) references emp(empno);#此项在录入信息后再录入。

新建工资等级表

create table salgrade(
    grade mediumint(8),
    losal decimal(17,2),
    hisal decimal(17,2)
);

奖金表

create table Bonus(
    ename varchar(10),
    job varchar(9),
    sal decimal(17,2),
    comm decimal(17,2)
);

录入员工的信息,方便练习。

#工资级别表  插入数据
INSERT INTO salgrade VALUES (1,700,1200);
INSERT INTO salgrade VALUES (2,1201,1400);
INSERT INTO salgrade VALUES (3,1401,2000);
INSERT INTO salgrade VALUES (4,2001,3000);
INSERT INTO salgrade VALUES (5,3001,9999);

#员工表  插入数据
insert into EMP (empno, ename, job, mgr, hiredate, sal, comm, deptno)
values (7369, 'SMITH', 'CLERK', 7902, '1980-12-17', 800, null, 20);
insert into EMP (empno, ename, job, mgr, hiredate, sal, comm, deptno)
values (7499, 'ALLEN', 'SALESMAN', 7698, '1981-02-20', 1600, 300, 30);
insert into EMP (empno, ename, job, mgr, hiredate, sal, comm, deptno)
values (7521, 'WARD', 'SALESMAN', 7698, '1981-02-22', 1250, 500, 30);
insert into EMP (empno, ename, job, mgr, hiredate, sal, comm, deptno)
values (7566, 'JONES', 'MANAGER', 7839, '1981-04-02', 2975, null, 20);
insert into EMP (empno, ename, job, mgr, hiredate, sal, comm, deptno)
values (7654, 'MARTIN', 'SALESMAN', 7698, '1981-09-28', 1250, 1400, 30);
insert into EMP (empno, ename, job, mgr, hiredate, sal, comm, deptno)
values (7698, 'BLAKE', 'MANAGER', 7839, '1981-05-01', 2850, null, 30);
insert into EMP (empno, ename, job, mgr, hiredate, sal, comm, deptno)
values (7782, 'CLARK', 'MANAGER', 7839, '1981-06-09', 2450, null, 10);
insert into EMP (empno, ename, job, mgr, hiredate, sal, comm, deptno)
values (7788, 'SCOTT', 'ANALYST', 7566, '1987-04-19', 3000, null, 20);
insert into EMP (empno, ename, job, mgr, hiredate, sal, comm, deptno)
values (7839, 'KING', 'PRESIDENT', null, '1981-11-17', 5000, null, 10);
insert into EMP (empno, ename, job, mgr, hiredate, sal, comm, deptno)
values (7844, 'TURNER', 'SALESMAN', 7698, '1981-09-08', 1500, 0, 30);
insert into EMP (empno, ename, job, mgr, hiredate, sal, comm, deptno)
values (7876, 'ADAMS', 'CLERK', 7788, '1987-05-23', 1100, null, 20);
insert into EMP (empno, ename, job, mgr, hiredate, sal, comm, deptno)
values (7900, 'JAMES', 'CLERK', 7698, '1981-12-03', 950, null, 30);
insert into EMP (empno, ename, job, mgr, hiredate, sal, comm, deptno)
values (7902, 'FORD', 'ANALYST', 7566, '1981-12-03', 3000, null, 20);
insert into EMP (empno, ename, job, mgr, hiredate, sal, comm, deptno)
values (7934, 'MILLER', 'CLERK', 7782, '1982-01-23', 1300, null, 10);


#部门表  插入数据
insert into DEPT (deptno, dname, loc)
values (10, 'ACCOUNTING', 'NEW YORK');
insert into DEPT (deptno, dname, loc)
values (20, 'RESEARCH', 'DALLAS');
insert into DEPT (deptno, dname, loc)
values (30, 'SALES', 'CHICAGO');
insert into DEPT (deptno, dname, loc)
values (40, 'OPERATIONS', 'BOSTON');		

注释:

Job:英译汉
PRESIDENT:英[ˈprezɪdənt]美[ˈprɛzɪdənt,-ˌdɛnt],总裁
CLERK:英[klɑ:k]美[klɜ:rk],小职员
SALESMAN:英[ˈseɪlzmən]美[ˈselzmən],销售员
MANAGER:英[ˈmænɪdʒə(r)]美[ˈmænɪdʒɚ],经理
ANALYST:英[ˈænəlɪst]美[ˈænəlɪst]n.	分析家,化验员; 〈美〉精神病医师;

录入信息后可以在MySQL中查询录入的信息。

select * from emp;
select * from dept;
select * from salgrade;
select * from bonus;

信息就录入成功了,不会建库,建表的看博主上条博客https://mp.csdn.net/editor/html/115309165,接下来就到表信息的各种查询,多练习就可以掌握。

传送门:简单表单查询练习

 

 

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐