oracle 创建 dept和emp表
时间: 2023-05-31 17:19:54 浏览: 1047
emp表结构及查询
4星 · 用户满意度95%
### 回答1:
创建dept和emp表的命令为:
CREATE TABLE dept(
deptno NUMBER(2) PRIMARY KEY,
dname VARCHAR2(14),
loc VARCHAR2(13)
);
CREATE TABLE emp(
empno NUMBER(4) PRIMARY KEY,
ename VARCHAR2(10),
job VARCHAR2(9),
mgr NUMBER(4),
hiredate DATE,
sal NUMBER(7,2),
comm NUMBER(7,2),
deptno NUMBER(2)
);
### 回答2:
Oracle创建dept和emp表的方法如下:
1. 打开Oracle的数据库管理工具(如SQL Developer)并登录。
2. 创建dept表。
先创建一个数据库,同时保证当前用户拥有相应的权限。
```
CREATE DATABASE emp_dept;
```
切换到该数据库:
```
USE emp_dept;
```
在该数据库中创建一个名为dept的表:
```
CREATE TABLE dept(
deptno NUMBER(2) PRIMARY KEY,
dname VARCHAR2(14),
loc VARCHAR2(13)
);
```
以上命令中,dept表共有3列,每一列数据类型分别为NUMBER和VARCHAR2。
其中,deptno为主键,其定义为NUMBER类型且长度为2,代表每一个部门的唯一标识。dname代表部门名称,loc代表部门所在地。
3. 创建emp表。
依照以上步骤,先确保当前数据库为emp_dept,然后创建一个名为emp的表:
```
CREATE TABLE emp(
empno NUMBER(4) PRIMARY KEY,
ename VARCHAR2(10),
job VARCHAR2(9),
mgr NUMBER(4),
hiredate DATE,
sal NUMBER(7,2),
comm NUMBER(7,2),
deptno NUMBER(2)
);
```
以上命令中,emp表共有8列,每一列数据类型分别为NUMBER,VARCHAR2和DATE。
其中,empno定义为主键,其定义为NUMBER类型且长度为4,代表每一个员工的唯一标识。ename代表员工姓名,job代表员工职位。
mgr代表员工的直接上级的员工编号,hiredate代表员工入职时间,sal代表员工的薪水,comm代表员工的奖金,deptno代表员工所属的部门标识。
4. 插入测试数据。
完成以上表的创建之后,需要往表内插入一些测试数据。以下是部分数据的插入语句:
```
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');
INSERT INTO emp (empno, ename, job, mgr, hiredate, sal, comm, deptno) values (7369, 'SMITH', 'CLERK', 7902, TO_DATE('1980-12-17', 'YYYY-MM-DD'), 800, NULL, 20);
INSERT INTO emp (empno, ename, job, mgr, hiredate, sal, comm, deptno) values (7499, 'ALLEN', 'SALESMAN', 7698, TO_DATE('1981-02-20', 'YYYY-MM-DD'), 1600, 300, 30);
INSERT INTO emp (empno, ename, job, mgr, hiredate, sal, comm, deptno) values (7521, 'WARD', 'SALESMAN', 7698, TO_DATE('1981-02-22', 'YYYY-MM-DD'), 1250, 500, 30);
INSERT INTO emp (empno, ename, job, mgr, hiredate, sal, comm, deptno) values (7566, 'JONES', 'MANAGER', 7839, TO_DATE('1981-04-02', 'YYYY-MM-DD'), 2975, NULL, 20);
INSERT INTO emp (empno, ename, job, mgr, hiredate, sal, comm, deptno) values (7654, 'MARTIN', 'SALESMAN', 7698, TO_DATE('1981-09-28', 'YYYY-MM-DD'), 1250, 1400, 30);
```
以上代码会向dept表和emp表中插入一些测试数据。
这样,Oracle的dept和emp表创建完毕。这两张表不仅可以用作数据存储,同时还可以用作查询、联结等操作的样本。
### 回答3:
Oracle是一个关系数据库管理系统,使用SQL语言进行操作和管理。在Oracle中,可以使用CREATE TABLE语句创建表。本文将详细介绍如何创建dept和emp表。
1. 创建dept表
dept表用于存储部门信息,包括部门编号(deptno)、部门名称(dname)、所在地(loc)三个字段。可以使用以下SQL语句创建dept表:
CREATE TABLE dept(
deptno NUMBER(2) PRIMARY KEY,
dname VARCHAR2(14),
loc VARCHAR2(13)
);
解释一下SQL语句的各个部分:
- CREATE TABLE dept:创建名为dept的表
- deptno NUMBER(2) PRIMARY KEY:定义deptno字段为数字类型,长度为2,同时作为主键
- dname VARCHAR2(14):定义dname字段为字符串类型,长度为14
- loc VARCHAR2(13):定义loc字段为字符串类型,长度为13
运行以上SQL语句后,dept表将会被创建。
2. 创建emp表
emp表用于存储员工信息,包括员工编号(empno)、员工姓名(ename)、职位(job)、上级领导编号(mgr)、入职日期(hiredate)、基本工资(sal)、奖金(comm)、所在部门编号(deptno)八个字段。可以使用以下SQL语句创建emp表:
CREATE TABLE emp(
empno NUMBER(4) PRIMARY KEY,
ename VARCHAR2(10),
job VARCHAR2(9),
mgr NUMBER(4),
hiredate DATE,
sal NUMBER(7,2),
comm NUMBER(7,2),
deptno NUMBER(2) REFERENCES dept(deptno)
);
解释一下SQL语句的各个部分:
- CREATE TABLE emp:创建名为emp的表
- empno NUMBER(4) PRIMARY KEY:定义empno字段为数字类型,长度为4,同时作为主键
- ename VARCHAR2(10):定义ename字段为字符串类型,长度为10
- job VARCHAR2(9):定义job字段为字符串类型,长度为9
- mgr NUMBER(4):定义mgr字段为数字类型,长度为4
- hiredate DATE:定义hiredate字段为日期类型
- sal NUMBER(7,2):定义sal字段为数字类型,长度为7,小数点后保留2位
- comm NUMBER(7,2):定义comm字段为数字类型,长度为7,小数点后保留2位
- deptno NUMBER(2) REFERENCES dept(deptno):定义deptno字段为数字类型,长度为2,同时作为外键,参考dept表中的deptno字段
运行以上SQL语句后,emp表将会被创建。
阅读全文