以下示例展示了如何使用 Oracle SQL 语句创建 SALGRADE、EMP 和 DEPT 表,并向这些表中插入数据。

CREATE TABLE SALGRADE(
    GRADE NUMBER(20),
    LOSAL NUMBER(8,2),
    HISAL NUMBER(8,2),
    PRIMARY KEY (GRADE)
);
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);


CREATE TABLE EMP(
    EMPNO NUMBER(20) NOT NULL PRIMARY KEY,
    ENAME VARCHAR2(10),
    JOB VARCHAR2(9),
    MGR NUMBER(4),
    HIREDATE DATE,
    SAL NUMBER(7, 2),
    COMM NUMBER(7, 2),
    DEPTNO NUMBER(20)
);

INSERT INTO EMP VALUES (7369, 'SMITH', 'CLERK', 7902, TO_DATE('1980-12-17', 'YYYY-MM-DD'), 800, NULL, 20);
INSERT INTO EMP VALUES (7499, 'ALLEN', 'SALESMAN', 7698, TO_DATE('1981-02-20', 'YYYY-MM-DD'), 1600, 300, 30);
INSERT INTO EMP VALUES (7521, 'WARD', 'SALESMAN', 7698, TO_DATE('1981-02-22', 'YYYY-MM-DD'),  1250, 500, 30);
INSERT INTO EMP VALUES (7566, 'JONES', 'MANAGER', 7839, TO_DATE('1981-04-02', 'YYYY-MM-DD'), 2975, NULL, 20);
INSERT INTO EMP VALUES (7654, 'MARTIN', 'SALESMAN', 7698, TO_DATE('1981-09-28', 'YYYY-MM-DD'),  1250, 1400, 30);
INSERT INTO EMP VALUES (7698, 'BLAKE', 'MANAGER', 7839, TO_DATE('1981-05-01', 'YYYY-MM-DD'), 2850, NULL, 30);
INSERT INTO EMP VALUES (7782, 'CLARK', 'MANAGER', 7839, TO_DATE('1981-06-09', 'YYYY-MM-DD'),  2450, NULL, 10);
INSERT INTO EMP VALUES (7788, 'SCOTT', 'ANALYST', 7566, TO_DATE('1982-12-09', 'YYYY-MM-DD'),  3000, NULL, 20);
INSERT INTO EMP VALUES (7839, 'KING', 'PRESIDENT', NULL, TO_DATE('1981-11-17', 'YYYY-MM-DD'),5000, NULL, 10);
INSERT INTO EMP VALUES (7844, 'TURNER', 'SALESMAN', 7698, TO_DATE('1981-09-08', 'YYYY-MM-DD'),  1500, 0, 30);
INSERT INTO EMP VALUES (7876, 'ADAMS', 'CLERK', 7788, TO_DATE('1983-01-12', 'YYYY-MM-DD'),  1100, NULL, 20);
INSERT INTO EMP VALUES (7900, 'JAMES', 'CLERK', 7698, TO_DATE('1981-12-03', 'YYYY-MM-DD'), 950, NULL, 30);
INSERT INTO EMP VALUES (7902, 'FORD', 'ANALYST', 7566, TO_DATE('1981-12-03', 'YYYY-MM-DD'), 3000, NULL, 20);
INSERT INTO EMP VALUES (7934, 'MILLER', 'CLERK', 7782, TO_DATE('1982-01-23', 'YYYY-MM-DD'), 1300, NULL, 10);

-- 创建DEPT部门表
CREATE TABLE DEPT(
    DEPTNO NUMBER(20) NOT NULL PRIMARY KEY,
    DNAME VARCHAR2(14),
    LOC VARCHAR2(13)
);
-- DEPT部门表添加数据
INSERT INTO DEPT VALUES (10, 'ACCOUNTING', 'NEW YORK');
INSERT INTO DEPT VALUES (20, 'RESEARCH', 'DALLAS');
INSERT INTO DEPT VALUES (30, 'SALES', 'CHICAGO');
INSERT INTO DEPT VALUES (40, 'OPERATIONS', 'BOSTON');

CREATE TABLE SALGRADE_BAK AS SELECT * FROM SALGRADE;
CREATE TABLE EMP_BAK AS SELECT * FROM EMP;
CREATE TABLE DEPT_BAK AS SELECT * FROM DEPT;

代码说明:

  • 创建 SALGRADE 表,用于存储工资等级信息。
    • GRADE:工资等级,使用 NUMBER(20) 类型,作为主键。
    • LOSAL:最低工资,使用 NUMBER(8,2) 类型,表示最多 8 位数字,其中小数点后保留 2 位。
    • HISAL:最高工资,使用 NUMBER(8,2) 类型。
  • 创建 EMP 表,用于存储员工信息。
    • EMPNO:员工编号,使用 NUMBER(20) 类型,作为主键,并设置为 NOT NULL
    • ENAME:员工姓名,使用 VARCHAR2(10) 类型,最多存储 10 个字符。
    • JOB:工作职位,使用 VARCHAR2(9) 类型。
    • MGR:主管编号,使用 NUMBER(4) 类型。
    • HIREDATE:雇用日期,使用 DATE 类型。
    • SAL:工资,使用 NUMBER(7,2) 类型。
    • COMM:佣金,使用 NUMBER(7,2) 类型。
    • DEPTNO:部门编号,使用 NUMBER(20) 类型。
  • 创建 DEPT 表,用于存储部门信息。
    • DEPTNO:部门编号,使用 NUMBER(20) 类型,作为主键,并设置为 NOT NULL
    • DNAME:部门名称,使用 VARCHAR2(14) 类型。
    • LOC:部门位置,使用 VARCHAR2(13) 类型。
  • 使用 INSERT 语句向每个表中插入数据。
  • 使用 CREATE TABLE ... AS SELECT * FROM ... 语句创建备份表。

该 SQL 语句没有错误。

Oracle SQL 数据库表创建与数据插入示例

原文地址: https://www.cveoy.top/t/topic/nxmI 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录