⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pers.sql

📁 sql的数据库系统的实例,是关于体育协会的详细分类,是用德语写的.
💻 SQL
字号:
set echo on
set termout on
set tab off
spool z:\oracle\pers.txt

set pause '=============> Weiter mit <ET>'
set linesize 120
set pagesize 37 

-- ************************************************************************
-- *   Datenbank: Personal                               Stand: 22.3.2000 *
-- ************************************************************************
--                                                     /\
--                                                    /  \
--                                                   /hat-\
--                                                   \ltr /
--                                                    \  /
--                                  /\                |\/|
--                                 /  \              1|  |n
--                                /    \              |  |
--    +------------------+ 1     /      \    n +------------------+
--    | ABT              |-------\ist-in/------| BESCH            |
--    +------------------+        \    /       +------------------+
--                                 \  /                 |
--                                  \/                  | n
--                                                     /\
--                                                    /  \
--                                                   /hat \
--                                                   \    /
--                                                    \  /
--                                                     \/
--                                                      |
--                                                      | 1
--                                             +------------------+
--                                             | GEHSTUFE         |
--                                             +------------------+
--                                     
--   besch (bnr, name, taet, e_datum, geh, praem, zuschl)
--          ===
--      besch    Entity-Typ Beschaeftigte
--      bnr      Beschaeftigten-Nummer
--      name     Name
--      taet     Taetigkeit
--      e_datum  Einstellungsdatum
--      geh      Gehalt
--      zuschl   Gehaltszuschlag
--      praem    Jahrespraemie
--   Primaerschluessel: bnr
--
--  abt (abtnr, abtname, ort)
--       =====
--      abt      Entity-Typ Abteilungen
--      abtnr    Abteilungs-Nummer
--      abtname  Abteilungs-Name
--      ort      Ort
--   Primaerschluessel: abtnr
--
--   gehstufe (stufe, von, bis)
--             =====
--      gehstufe Entity-Typ Gehaltsstufen
--      stufe    Gehaltsstufe
--      von      Untergrenze der Stufe
--      bis      Obergrenze der Stufe
--  Primaerschluessel: gehstufe

DROP   TABLE besch;
DROP   TABLE abt;
DROP   TABLE gehstufe;
DROP   TABLE kursus;
DROP   VIEW  teiln1;
DROP   VIEW  teiln2;

CREATE  TABLE besch
        (bnr      NUMBER  (4)  NOT NULL,
         name     VARCHAR    (10),
         taet     VARCHAR    (10),
         ltr      NUMBER  (4),
         e_datum  DATE,
         geh      NUMBER  (7, 2),
         zuschl   NUMBER  (7, 2),
         praem    NUMBER  (9,2),
         abtnr    NUMBER  (2) NOT NULL);
-- abtnr ist Fremdschluessel fuer die Abteilungszugehoerigkeit
-- ltr   ist Fremdschluessel, der den Leiter benennt, d.h. Rolle fuer bnr

CREATE  TABLE abt
        (abtnr NUMBER (2) NOT NULL, abtname VARCHAR (10), ort VARCHAR (7));

CREATE  TABLE gehstufe (stufe NUMBER, von NUMBER, bis NUMBER);
-- von und bis ermoeglichen den Theta-Join ueber das Gehalt

INSERT INTO besch VALUES
(7839, 'KOENIG',  'DIREKTOR',   NULL, '17.11.99',  6000, NULL, NULL, 10);
INSERT INTO besch VALUES
(7566, 'JONAS',   'LEITER',     7839,   '2.4.98',  5000, NULL, NULL, 20);
INSERT INTO besch VALUES
(7698, 'BLASCHE', 'LEITER',     7839,   '1.7.98',  5200, NULL, NULL, 30);
INSERT INTO besch VALUES
(7782, 'CLAUSS',  'LEITER',     7839,   '9.6.97',  5000, NULL, NULL, 10);
INSERT INTO besch VALUES
(7788, 'SCHOTT',  'INGENIEUR',  7566,  '17.2.00',  5200, NULL, NULL, 20);
INSERT INTO besch VALUES
(7876, 'ADAM',    'SACHB.',     7788,  '23.8.96',  3600, NULL, NULL, 20);
INSERT INTO besch VALUES
(7902, 'FORNER',   'INGENIEUR', 7566,   '3.2.99',  4400, NULL, NULL, 20);
INSERT INTO besch VALUES
(7369, 'SCHMIDT', 'SACHB.',     7902,  '17.1.99',  3200, NULL, NULL, 20);
INSERT INTO besch VALUES
(7499, 'ALTMANN', 'VERKAEUFER', 7698,  '20.2.97',  2400,  800, NULL, 30);
INSERT INTO besch VALUES
(7521, 'WARKUS',  'VERKAEUFER', 7698,  '22.2.97',  2650, 1000, NULL, 30);
INSERT INTO besch VALUES
(7654, 'MARTIN',  'VERKAEUFER', 7698,  '28.8.97',  3200, 2600, NULL, 30);
INSERT INTO besch VALUES
(7844, 'THOMAS',  'VERKAEUFER', 7698,   '8.9.96',  2400,    0, NULL, 30);
INSERT INTO besch VALUES
(7900, 'JUHN',     'SACHB.',    7698,   '3.1.97',  4800, NULL, NULL, 30);
INSERT INTO besch VALUES
(7934,'MUELLER',   'SACHB.',    7782,  '23.1.98',  4850, NULL, NULL, 10);

INSERT INTO abt  VALUES (10, 'DIREKTION',  'BERLIN');
INSERT INTO abt  VALUES (20, 'FORSCHUNG',  'DRESDEN');
INSERT INTO abt  VALUES (30, 'VERKAUF',    'LEIPZIG');
INSERT INTO abt  VALUES (40, 'PRODUKTION', 'MEISSEN');

INSERT INTO gehstufe  VALUES (1, 1600, 2500);
INSERT INTO gehstufe  VALUES (2, 2501, 3400);
INSERT INTO gehstufe  VALUES (3, 3401, 4000);
INSERT INTO gehstufe  VALUES (4, 4001, 5200);
INSERT INTO gehstufe  VALUES (5, 5201, 10000);

COMMIT;

SELECT * FROM tab;
SELECT * FROM besch;
SELECT * FROM abt;
SELECT * FROM gehstufe;

spool off


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -