Sunteți pe pagina 1din 5

drop table dept purge;

drop table dept purge


*
ERROR at line 1:
ORA-00942: table or view does not exist

SQL> ed
Wrote file afiedt.buf

1* drop table emp purge


2 /

Table dropped.

SQL> clear screen


SQL> ed
Wrote file afiedt.buf

1 CREATE TABLE Dept


2 ( Deptno Number(2) Constraint Deptno_PK PRIMARY KEY,
3 Dname Varchar2(20) Constraint Dname_NN NOT NULL,
4 Loc Varchar2(20) Constraint Loc_NN NOT NULL
5* )
SQL> /

Table created.

SQL> ed
Wrote file afiedt.buf

1 CREATE TABLE Emp


2 (Empno Number(4) Constraint Empno_PK PRIMARY KEY,
3 Ename Varchar2(20) Constraint Ename_NN NOT NULL,
4 Job Varchar2(15) Constraint Job_NN NOT NULL,
5 Mgr Number(4) Constraint Mgr_FK_Self REFERENCES
6 Emp(Empno) ON DELETE SET NULL,
7 Hiredate Date
8 Constraint Hiredate_NN NOT NULL,
9 Sal Number(8,2)
10 Constraint Sal_NN NOT NULL,
11 Comm Number(8,2),
12 Deptno Number Constraint Deptno_FK REFERENCES Dept(Deptno) ON DELETE CASCADE
13* )
14 /

Table created.

SQL> select *from dept;

no rows selected

SQL> INSERT INTO DEPT VALUES


2 (10,'ACCOUNTING','NEW YORK');

1 row created.

SQL> INSERT INTO DEPT VALUES (20,'RESEARCH','DALLAS');


1 row created.

SQL> INSERT INTO DEPT VALUES


2 (30,'SALES','CHICAGO');

1 row created.

SQL> INSERT INTO DEPT VALUES


2 (40,'OPERATIONS','BOSTON');

1 row created.

SQL>
SQL> commit;

Commit complete.

SQL> select *from dept;

DEPTNO DNAME LOC

--------- -------------------- --------------------

10 ACCOUNTING NEW YORK

20 RESEARCH DALLAS

30 SALES CHICAGO

40 OPERATIONS BOSTON

SQL> desc emp


Name Null? Type
------------------------------- -------- ----
EMPNO NOT NULL NUMBER(4)
ENAME NOT NULL VARCHAR2(20)
JOB NOT NULL VARCHAR2(15)
MGR NUMBER(4)
HIREDATE NOT NULL DATE
SAL NOT NULL NUMBER(8,2)
COMM NUMBER(8,2)
DEPTNO NUMBER

SQL> insert into emp values(7369,'SMITH','CLERK',7902,'17-dec-80',800,300,20);


insert into emp values(7369,'SMITH','CLERK',7902,'17-dec-80',800,300,20)
*
ERROR at line 1:
ORA-02291: integrity constraint (JONES.MGR_FK_SELF) violated - parent key not found

SQL> ed
Wrote file afiedt.buf

1 insert into emp


2* values(7369,'SMITH','CLERK',7369,'17-dec-80',800,300,20)
3 /
1 row created.

SQL> ed
Wrote file afiedt.buf

1 insert into emp


2* values(7839,'KING','PRE',null,'17-dec-80',5000,null,10)
SQL> /

1 row created.

SQL> ed
Wrote file afiedt.buf

1 insert into emp


2* values(7566,'JONES','MANAGER',7839,'17-dec-80',2975,null,20)
3 /

1 row created.

SQL> ed
Wrote file afiedt.buf

1 insert into emp


2* values(7902,'FORD','AN',7566,'03-dec-81',3000,null,20)
SQL> /

1 row created.

SQL> clear screen


SQL> select *from dept;

DEPTNO DNAME LOC

--------- -------------------- --------------------

10 ACCOUNTING NEW YORK

20 RESEARCH DALLAS

30 SALES CHICAGO

40 OPERATIONS BOSTON

SQL> select *from emp;

EMPNO ENAME JOB MGR HIREDATE SAL


COMM DEPTNO
--------- -------------------- --------------- --------- --------- ---------
--------- ---------
7369 SMITH CLERK 7369 17-DEC-80 800
300 20
7839 KING PRE 17-DEC-80 5000
10
7566 JONES MANAGER 7839 17-DEC-80 2975
20
7902 FORD AN 7566 03-DEC-81 3000
20
SQL> commit;

Commit complete.

SQL> ed
Wrote file afiedt.buf

line 2 truncated.
1 update emp set mgr=7902
2* where empno=736
SQL> /

0 rows updated.

SQL> ed
Wrote file afiedt.buf

1 update emp set mgr=7902


2* where empno=7369
SQL> /

1 row updated.

SQL> commit;

Commit complete.

SQL> clear screen


SQL> select *from dept;

DEPTNO DNAME LOC

--------- -------------------- --------------------

10 ACCOUNTING NEW YORK

20 RESEARCH DALLAS

30 SALES CHICAGO

40 OPERATIONS BOSTON

SQL> select *from emp;

EMPNO ENAME JOB MGR HIREDATE SAL


COMM DEPTNO
--------- -------------------- --------------- --------- --------- ---------
--------- ---------
7369 SMITH CLERK 7902 17-DEC-80 800
300 20
7839 KING PRE 17-DEC-80 5000
10
7566 JONES MANAGER 7839 17-DEC-80 2975
20
7902 FORD AN 7566 03-DEC-81 3000
20
SQL> delete from dept
2 where deptno=10;

1 row deleted.

SQL> ed
Wrote file afiedt.buf

1 delete from dept


2* where deptno=10
SQL> /

0 rows deleted.

SQL> select *from dept;

DEPTNO DNAME LOC

--------- -------------------- --------------------

20 RESEARCH DALLAS

30 SALES CHICAGO

40 OPERATIONS BOSTON

SQL> select *from emp;

EMPNO ENAME JOB MGR HIREDATE SAL


COMM DEPTNO
--------- -------------------- --------------- --------- --------- ---------
--------- ---------
7369 SMITH CLERK 7902 17-DEC-80 800
300 20
7566 JONES MANAGER 17-DEC-80 2975
20
7902 FORD AN 7566 03-DEC-81 3000
20

SQL> delete from emp


2 where empno=7566;

1 row deleted.

SQL>

S-ar putea să vă placă și