Beruflich Dokumente
Kultur Dokumente
SQL>
SQL>
2
3
4
5
ENAME
---------KING
BLAKE
MARTIN
ALLEN
TURNER
JAMES
WARD
CLARK
MILLER
JONES
FORD
Path
----------------------------------/KING
/KING/BLAKE
/KING/BLAKE/MARTIN
/KING/BLAKE/ALLEN
/KING/BLAKE/TURNER
/KING/BLAKE/JAMES
/KING/BLAKE/WARD
/KING/CLARK
/KING/CLARK/MILLER
/KING/JONES
/KING/JONES/FORD
ENAME
---------SMITH
SCOTT
ADAMS
Path
----------------------------------/KING/JONES/FORD/SMITH
/KING/JONES/SCOTT
/KING/JONES/SCOTT/ADAMS
14 rows selected.
SQL> ed
Wrote file afiedt.buf
1
2
3
4
5*
SQL>
SELECT Ename,
SYS_CONNECT_BY_PATH(Ename, '<-') "Path"
FROM Emp
START WITH Ename = 'KING'
CONNECT BY PRIOR Empno = MGR
/
ENAME
---------KING
BLAKE
MARTIN
ALLEN
TURNER
JAMES
WARD
CLARK
MILLER
JONES
FORD
Path
----------------------------------<-KING
<-KING<-BLAKE
<-KING<-BLAKE<-MARTIN
<-KING<-BLAKE<-ALLEN
<-KING<-BLAKE<-TURNER
<-KING<-BLAKE<-JAMES
<-KING<-BLAKE<-WARD
<-KING<-CLARK
<-KING<-CLARK<-MILLER
<-KING<-JONES
<-KING<-JONES<-FORD
ENAME
---------SMITH
SCOTT
ADAMS
Path
----------------------------------<-KING<-JONES<-FORD<-SMITH
<-KING<-JONES<-SCOTT
<-KING<-JONES<-SCOTT<-ADAMS
14 rows selected.
SQL>
2
3
4
5
SELECT Ename,
SYS_CONNECT_BY_PATH(Sal, '/') "SalPath"
FROM Emp
START WITH Job = 'ANALYST'
CONNECT BY PRIOR Empno = MGR;
ENAME
---------SalPath
-------------------------------------------------------------------------------FORD
/3000
SMITH
/3000/800
SCOTT
/3000
ENAME
---------SalPath
-------------------------------------------------------------------------------ADAMS
/3000/1100
SQL> COLUMN SalPath FORMAt A40
SQL> /
ENAME
---------FORD
SMITH
SCOTT
ADAMS
SalPath
---------------------------------------/3000
/3000/800
/3000
/3000/1100
SQL> cl scr
SQL> ed
Wrote file afiedt.buf
1
2
3
4
5*
SQL>
SELECT Ename,
SYS_CONNECT_BY_PATH(Sal, '/') "SalPath"
FROM Emp
START WITH Job = 'PRESIDENT'
CONNECT BY PRIOR Empno = MGR
/
ENAME
---------KING
BLAKE
MARTIN
ALLEN
TURNER
SalPath
---------------------------------------/5000
/5000/2850
/5000/2850/1250
/5000/2850/1600
/5000/2850/1500
JAMES
WARD
CLARK
MILLER
JONES
FORD
/5000/2850/950
/5000/2850/1250
/5000/2450
/5000/2450/1300
/5000/2975
/5000/2975/3000
ENAME
---------SMITH
SCOTT
ADAMS
SalPath
---------------------------------------/5000/2975/3000/800
/5000/2975/3000
/5000/2975/3000/1100
14 rows selected.
SQL> cl scr
SQL> ed
Wrote file afiedt.buf
1
2
3
4*
SQL>
ENAME
EMPNO
MGR
SAL
---------- ---------- ---------- ---------KING
7839
5000
BLAKE
7698
7839
2850
MARTIN
7654
7698
1250
ALLEN
7499
7698
1600
TURNER
7844
7698
1500
JAMES
7900
7698
950
WARD
7521
7698
1250
CLARK
7782
7839
2450
MILLER
7934
7782
1300
JONES
7566
7839
2975
FORD
7902
7566
3000
ENAME
EMPNO
MGR
SAL
---------- ---------- ---------- ---------SMITH
7369
7902
800
SCOTT
7788
7566
3000
ADAMS
7876
7788
1100
14 rows selected.
SQL>
2
3
4
UPDATE Emp
SET
MGR = 7566
WHERE Empno = 7839;
1 row updated.
SQL> SELECT Ename, Empno, MGR, Sal
2 FROM Emp;
ENAME
EMPNO
MGR
SAL
---------- ---------- ---------- ----------
KING
BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
7839
7698
7782
7566
7654
7499
7844
7900
7521
7902
7369
7566
7839
7839
7839
7698
7698
7698
7698
7698
7566
7902
5000
2850
2450
2975
1250
1600
1500
950
1250
3000
800
ENAME
EMPNO
MGR
SAL
---------- ---------- ---------- ---------SCOTT
7788
7566
3000
ADAMS
7876
7788
1100
MILLER
7934
7782
1300
14 rows selected.
SQL> SELECT Ename, Empno, MGR, Sal
2 FROM Emp
3 START WITH Job = 'PRESIDENT'
4 CONNECT BY PRIOR Empno = MGR;
ERROR:
ORA-01436: CONNECT BY loop in user data
no rows selected
SQL> ed
Wrote file afiedt.buf
1
2
3
4*
SQL>
ENAME
EMPNO
MGR
SAL
---------- ---------- ---------- ---------KING
7839
7566
5000
BLAKE
7698
7839
2850
MARTIN
7654
7698
1250
ALLEN
7499
7698
1600
TURNER
7844
7698
1500
JAMES
7900
7698
950
WARD
7521
7698
1250
CLARK
7782
7839
2450
MILLER
7934
7782
1300
JONES
7566
7839
2975
FORD
7902
7566
3000
ENAME
EMPNO
MGR
SAL
---------- ---------- ---------- ---------SMITH
7369
7902
800
SCOTT
7788
7566
3000
ADAMS
7876
7788
1100
14 rows selected.
SQL> ROLLBACK;
Rollback complete.
SQL> cl scr
SQL>
2
3
4
ENAME
EMPNO
MGR
SAL
---------- ---------- ---------- ---------KING
7839
5000
BLAKE
7698
7839
2850
MARTIN
7654
7698
1250
ALLEN
7499
7698
1600
TURNER
7844
7698
1500
JAMES
7900
7698
950
WARD
7521
7698
1250
CLARK
7782
7839
2450
MILLER
7934
7782
1300
JONES
7566
7839
2975
FORD
7902
7566
3000
ENAME
EMPNO
MGR
SAL
---------- ---------- ---------- ---------SMITH
7369
7902
800
SCOTT
7788
7566
3000
ADAMS
7876
7788
1100
14 rows selected.
SQL> cl scr
SQL> e
SP2-0042: unknown command "e" - rest of line ignored.
SQL> ed
Wrote file afiedt.buf
1
2
3
4*
SQL>
ENAME
EMPNO
MGR
SAL
---------- ---------- ---------- ---------KING
7839
5000
BLAKE
7698
7839
2850
MARTIN
7654
7698
1250
ALLEN
7499
7698
1600
TURNER
7844
7698
1500
JAMES
7900
7698
950
WARD
7521
7698
1250
CLARK
7782
7839
2450
MILLER
7934
7782
1300
JONES
7566
7839
2975
FORD
7902
7566
3000
ENAME
EMPNO
MGR
SAL
---------- ---------- ---------- ---------SMITH
7369
7902
800
SCOTT
7788
7566
3000
ADAMS
7876
7788
1100
14 rows selected.
SQL> ed
Wrote file afiedt.buf
1
2
3
4
5*
SQL>
ENAME
EMPNO
MGR
SAL
---------- ---------- ---------- ---------SMITH
7369
7902
800
JAMES
7900
7698
950
ADAMS
7876
7788
1100
MARTIN
7654
7698
1250
WARD
7521
7698
1250
MILLER
7934
7782
1300
TURNER
7844
7698
1500
ALLEN
7499
7698
1600
CLARK
7782
7839
2450
BLAKE
7698
7839
2850
JONES
7566
7839
2975
ENAME
EMPNO
MGR
SAL
---------- ---------- ---------- ---------FORD
7902
7566
3000
SCOTT
7788
7566
3000
KING
7839
5000
14 rows selected.
SQL> ed
Wrote file afiedt.buf
1
2
3
4
5*
SQL>
ENAME
EMPNO
MGR
SAL
---------- ---------- ---------- ---------ADAMS
7876
7788
1100
ALLEN
7499
7698
1600
BLAKE
7698
7839
2850
CLARK
7782
7839
2450
FORD
7902
7566
3000
JAMES
7900
7698
950
JONES
KING
MARTIN
MILLER
SCOTT
7566
7839
7654
7934
7788
7839
7698
7782
7566
2975
5000
1250
1300
3000
ENAME
EMPNO
MGR
SAL
---------- ---------- ---------- ---------SMITH
7369
7902
800
TURNER
7844
7698
1500
WARD
7521
7698
1250
14 rows selected.
SQL> ed
Wrote file afiedt.buf
1
2
3
4
5*
SQL>
ENAME
EMPNO
MGR
SAL
---------- ---------- ---------- ---------KING
7839
5000
BLAKE
7698
7839
2850
ALLEN
7499
7698
1600
JAMES
7900
7698
950
MARTIN
7654
7698
1250
TURNER
7844
7698
1500
WARD
7521
7698
1250
CLARK
7782
7839
2450
MILLER
7934
7782
1300
JONES
7566
7839
2975
FORD
7902
7566
3000
ENAME
EMPNO
MGR
SAL
---------- ---------- ---------- ---------SMITH
7369
7902
800
SCOTT
7788
7566
3000
ADAMS
7876
7788
1100
14 rows selected.
SQL> ed
Wrote file afiedt.buf
1
2
3
4
5*
SQL>
ENAME
EMPNO
MGR
SAL
---------- ---------- ---------- ---------KING
7839
5000
JONES
7566
7839
2975
SCOTT
ADAMS
FORD
SMITH
CLARK
MILLER
BLAKE
WARD
TURNER
7788
7876
7902
7369
7782
7934
7698
7521
7844
7566
7788
7566
7902
7839
7782
7839
7698
7698
3000
1100
3000
800
2450
1300
2850
1250
1500
ENAME
EMPNO
MGR
SAL
---------- ---------- ---------- ---------MARTIN
7654
7698
1250
JAMES
7900
7698
950
ALLEN
7499
7698
1600
14 rows selected.
SQL> ed
Wrote file afiedt.buf
1
2
3
4
5*
SQL>
ENAME
EMPNO
MGR
SAL
---------- ---------- ---------- ---------KING
7839
5000
JONES
7566
7839
2975
FORD
7902
7566
3000
SMITH
7369
7902
800
SCOTT
7788
7566
3000
ADAMS
7876
7788
1100
BLAKE
7698
7839
2850
ALLEN
7499
7698
1600
TURNER
7844
7698
1500
MARTIN
7654
7698
1250
WARD
7521
7698
1250
ENAME
EMPNO
MGR
SAL
---------- ---------- ---------- ---------JAMES
7900
7698
950
CLARK
7782
7839
2450
MILLER
7934
7782
1300
14 rows selected.
SQL> cl scr
SQL>
2
SQL>
2
3
SQL>
2
3
SELECT SequenceObject.NEXTVAL
INSERT INTO TableName
VALUES(SequenceObject.CURRVAL
UPDATE TableName
SET
Column = SequenceObject.CURRVAL
4
SQL> cl scr
SQL>
2
3
4
5
6
7
Table created.
SQL>
2
3
4
5
6
7
8
Sequence created.
SQL> SELECT SampleSeq01.CURRVAL FROM DUAL;
SELECT SampleSeq01.CURRVAL FROM DUAL
*
ERROR at line 1:
ORA-08002: sequence SAMPLESEQ01.CURRVAL is not yet defined in this session
SQL>
2
3
4
1 row created.
SQL> SELECT SampleSeq01.CURRVAL FROM DUAL;
CURRVAL
---------0
SQL> SELECT * FROM Sample01;
SAMPID SAMPNAME
SAMPDATE
---------- ------------------------- --------0 SAMPLE
31-AUG-05
SQL>
2
3
4
1 row created.
SQL> /
1 row created.
SQL> /
1 row created.
SQL> /
1 row created.
SQL> /
1 row created.
SQL> SELECT * FROM Sample01;
SAMPID
---------0
1
2
3
4
5
SAMPNAME
------------------------SAMPLE
SAMPLE
SAMPLE
SAMPLE
SAMPLE
SAMPLE
SAMPDATE
--------31-AUG-05
31-AUG-05
31-AUG-05
31-AUG-05
31-AUG-05
31-AUG-05
6 rows selected.
SQL> SELECT SampleSeq01.CURRVAL FROM DUAL;
CURRVAL
---------5
SQL> INSERT INTO Sample01
2 (SampID, SampName, SampDate)
3 VALUES
4 (SampleSeq01.NEXTVAL, 'SAMPLE', '31-AUG-05');
INSERT INTO Sample01
*
ERROR at line 1:
ORA-08004: sequence SAMPLESEQ01.NEXTVAL exceeds MAXVALUE and cannot be
instantiated
SQL> ed
Wrote file afiedt.buf
1
2
3
4*
SQL>
1 row created.
SQL> cl scr
SQL>
2
3
4
5
6
7
8
MAXVALUE 5
NOCACHE
CYCLE
/
Sequence created.
SQL>
2
3
4
5
6
7
Table created.
SQL>
2
3
4
1 row created.
SQL> /
1 row created.
SQL> /
1 row created.
SQL> /
1 row created.
SQL> /
1 row created.
SQL> /
1 row created.
SQL> /
INSERT INTO Sample02
*
ERROR at line 1:
ORA-00001: unique constraint (SCOTT.SAMPID_PK02) violated
SQL> SELECT SampleSeq02.CURRVAL FROM DUAl;
CURRVAL
---------0
SQL> cl scr
SQL> CREATE SEQUENCE SampleSeq03
2
3
4
5
6
7
8
INCREMENT BY 1
START WITH 5
MINVALUE 0
MAXVALUE 10
NOCACHE
CYCLE
/
Sequence created.
SQL>
2
3
4
5
6
Table created.
SQL>
2
3
4
1 row created.
SQL> SELECT SampleSeq03.CURRVAL FROM DUAl;
CURRVAL
---------5
SQL>
2
3
4
1 row created.
SQL> /
1 row created.
SQL> /
1 row created.
SQL> /
1 row created.
SQL> /
1 row created.
SQL> /
1 row created.
SQL> SELECT * FROM Sample03;
SAMPID
---------5
6
7
8
9
10
0
SAMPNAME
------------------------SAMPLE
SAMPLE
SAMPLE
SAMPLE
SAMPLE
SAMPLE
SAMPLE
SAMPDATE
--------31-AUG-05
31-AUG-05
31-AUG-05
31-AUG-05
31-AUG-05
31-AUG-05
31-AUG-05
7 rows selected.
SQL> cl scr
SQL>
2
3
4
5
6
7
8
Sequence created.
SQL>
2
3
4
5
6
Table created.
SQL>
2
3
4
1 row created.
SQL> /
1 row created.
SQL> SELECT SampleSeq04.NEXTVAL FROM DUAl;
NEXTVAL
---------2
SQL> /
NEXTVAL
---------3
SQL> INSERT INTO Sample04
2 (SampID, SampName, SampDate)
3 VALUES
4 (SampleSeq04.NEXTVAL, 'SAMPLE', '31-AUG-05');
1 row created.
SQL> /
1 row created.
SQL> /
1 row created.
SQL> SELECT SampleSeq04.NEXTVAL FROM DUAl;
NEXTVAL
---------7
SQL> /
NEXTVAL
---------8
SQL>
2
3
4
1 row created.
SQL>
2
3
4
1 row created.
SQL> SELECT * FROM Sample04;
SAMPID
---------0
1
4
5
6
9
10
SAMPNAME
------------------------SAMPLE
SAMPLE
SAMPLE
SAMPLE
SAMPLE
SAMPLE
SAMPLE
7 rows selected.
SQL> cl scr
SQL>
2
3
4
5
SAMPDATE
--------31-AUG-05
31-AUG-05
31-AUG-05
31-AUG-05
31-AUG-05
31-AUG-05
31-AUG-05
6 NOCACHE
7 NOCYCLE
8 /
Sequence created.
SQL>
2
3
4
5
6
Table created.
SQL>
2
3
4
1 row created.
SQL> /
1 row created.
SQL> /
1 row created.
SQL> SELECT * FROM Sample05;
SAMPID
---------10
9
8
SAMPNAME
------------------------SAMPLE
SAMPLE
SAMPLE
SQL> cl scr
SQL>
2
3
4
5
6
7
8
Sequence created.
SQL>
2
3
4
5
6
Table created.
SAMPDATE
--------31-AUG-05
31-AUG-05
31-AUG-05
SQL>
2
3
4
1 row created.
SQL> /
1 row created.
SQL> /
1 row created.
SQL> SELECT * FROM Sample06;
SAMPID
---------0
10
20
SQL>
2
3
4
5
6
7
8
SAMPNAME
------------------------SAMPLE
SAMPLE
SAMPLE
Sequence created.
SQL>
2
3
4
5
6
Table created.
SQL> ed
Wrote file afiedt.buf
1
2
3
4
5
6*
SQL>
Table created.
SQL> ed
Wrote file afiedt.buf
1 CREATE TABLE Sample07_3
SAMPDATE
--------31-AUG-05
31-AUG-05
31-AUG-05
2
3
4
5
6*
SQL>
(
SampID
NUMBER(4),
SampName VARCHAR2(25),
SampDate DATE
)
/
Table created.
SQL>
2
3
4
1 row created.
SQL> /
1 row created.
SQL> /
1 row created.
SQL> ed
Wrote file afiedt.buf
1
2
3
4*
SQL>
1 row created.
SQL> /
1 row created.
SQL> /
1 row created.
SQL> ed
Wrote file afiedt.buf
1
2
3
4*
SQL>
1 row created.
SQL> /
1 row created.
SQL> /
1 row created.
SQL> ed
Wrote file afiedt.buf
1
2
3
4*
SQL>
1 row created.
SQL> /
1 row created.
SQL> /
1 row created.
SQL> ed
Wrote file afiedt.buf
1
2
3
4*
SQL>
1 row created.
SQL> /
1 row created.
SQL> /
1 row created.
SQL> SELECT * FROM Sample07_1;
SAMPID
---------0
1
2
12
13
14
SAMPNAME
------------------------SAMPLE
SAMPLE
SAMPLE
SAMPLE
SAMPLE
SAMPLE
SAMPDATE
--------31-AUG-05
31-AUG-05
31-AUG-05
31-AUG-05
31-AUG-05
31-AUG-05
6 rows selected.
SQL> SELECT * FROM Sample07_2;
SAMPID
---------6
7
8
SAMPNAME
------------------------SAMPLE
SAMPLE
SAMPLE
SAMPDATE
--------31-AUG-05
31-AUG-05
31-AUG-05
SAMPNAME
------------------------SAMPLE
SAMPLE
SAMPLE
SAMPLE
SAMPLE
SAMPLE
6 rows selected.
SQL> SPOOL OFF
SAMPDATE
--------31-AUG-05
31-AUG-05
31-AUG-05
31-AUG-05
31-AUG-05
31-AUG-05