lesanne 1------------------------------------------------------------------------------- -- sqlplus scott/tiger@testdata describe kandidaadid insert into kandidaadid values ('Stanislav', 'Tsvetajev', '38609140224', 60, 70, 80); update kandidaadid set eesnimi='Stas' where isikukood=38609140224; select * from kandidaadid where eesnimi = 'Stas'; delete from kandidaadid where eesnimi = 'stas'; lesanne 2------------------------------------------------------------------------------- -- sqlplus scott/tiger@testdata select eesnimi, perenimi, emakeel from kandidaadid where isikukood like '4%' and emakeel >60; select eesnimi, perenimi, to_date(substr(isikukood,2,6),'YYMMDD') as sunniaeg from kandidaadid where to_date(substr(isikukood, 4, 4), 'mmdd')> sysdate order by to_date(substr(isikukood, 4, 4), 'mmdd'); lesanne 3----------------------------------------------------------------- sq
SQL> MERGE INTO minu_oppeained m 2 USING uued_oppeained u ON (u.KOOD = m.KOOD) 3 WHEN MATCHED THEN 4 UPDATE SET m.OPPEJOUD = u.OPPEJOUD, m.NIMETUS = u.NIMETUS 5 WHEN NOT MATCHED THEN 6 INSERT (KOOD, OPPEJOUD, NIMETUS) VALUES (u.KOOD, u.OPPEJOUD, u.NIMETUS); 6 rows merged. SQL> SELECT * FROM minu_oppeained; KOOD OPPEJOUD NIMETUS ------------------ --------------- -------------------------------------- I319 Toomas Lepikult Oracle: SQL ja PL/SQL Id310 Vladimir Viies Operatsioonissteemide tehnoloogia Iad307 Heldur Haak Digitaalkommunikatsioon Id309 Riivo Senk Digitaalne heli- ja pilditöötlus ID218 Toomas Kont Riistvaral„hedane programmeerimine I244 Mart Mangus Võrgurakendused I Id221 Guido Kangur Näitlemine Id404 Ossa Issand Filosoofia
9. Ülesanne 1. Moodustage tabel tallede kohta (sünniaeg, sünnikaal, id-number, sugu). Kirjutage skript, mis laseb sisestada tabelisse (asendusmuutujate abil) andmeid sündinud tallede kohta. Iga looma kohta genereeritakse jada abil id-number; jäär saab paaritu ja utt paarisnumbri. CREATE TABLE talled ( id NUMBER(5), synniaeg DATE, synnikaal NUMBER(5,2), sugu VARCHAR(4), CONSTRAINT talled_pk PRIMARY KEY (id), CONSTRAINT talled_chk CHECK (sugu IN ('jaar','utt')) ); CREATE SEQUENCE talled_seq_jaar START WITH 1 INCREMENT BY 2 NOCACHE NOCYCLE; CREATE SEQUENCE talled_seq_utt START WITH 2 INCREMENT BY 2 NOCACHE NOCYCLE; --- Scripti algus --- set define on accept SYNNIAEG date prompt 'Talle sünniaeg: ' accept SYNNIKAAL number prompt 'Talle kaal (grammides): ' accept SUGU char prompt 'Talle sugu (jaar, utt): ' BEGIN IF '&SUGU' = 'jaar' THEN INSERT INTO talled VALUES (talled_seq_jaar.nextval, '&SYNNIAEG', '&SYNNIKAAL', '
CREATE TABLE mina ( eesnimi varchar(30) not null, perenimi varchar(100) not null, sugu varchar(5) not null, synnipaev date not null, algus datetime not null default current timestamp, viimati datetime default timestamp, CONSTRAINT pk_mina PRIMARY KEY (eesnimi) ); INSERT INTO mina (eesnimi, perenimi, sugu, synnipaev) VALUES ('Juku', 'Mets', 'Mees', '1980-02-04'); grant connect to Sandra identified by 'tere'; grant group to dba; grant membership in group dba to Sandra; grant all on mina to Sandra; SELECT * FROM mina; UPDATE mina SET eesnimi = 'Jri' WHERE eesnimi = 'Juku'; CREATE GLOBAL TEMPORARY TABLE paha (nimi VARCHAR(40) NOT NULL, CONSTRAINT pk_paha PRIMARY KEY (nimi)) ON COMMIT PRESERVE ROWS; INSERT INTO paha (nimi) VALUES ('Mari'); SELECT * FROM paha; create table isik( Id integer not null default autoincrement primary key, Eesnimi varchar (50) not null, Perenimi varchar(50) not null, Isikukood varchar(11), Klubi integer, Unique (eesnimi, perenimi)) create table Klubi( Id
SQL> SPOOL currently spooling to ülesanne_12.lst SQL> CREATE TABLE koduylesanded AS (SELECT * FROM scott.koduylesanded); Table created. SQL> COLUMN yliopilase_id FORMAT 999 SQL> COLUMN kursusekood FORMAT A8 SQL> COLUMN too_nr FORMAT 999 SQL> COLUMN yliopilase_id FORMAT 999 SQL> COLUMN punktid FORMAT 999 SQL> COLUMN failinimi FORMAT A8 SQL> SQL> SELECT * FROM koduylesanded; YLIOPILASE_ID KURSUSEK KUUPAEV TOO_NR FAILINIM PUNKTID ------------------------ -------- --------------- ------ -------- ------- 10020014 I319 01-JUN-03 1 t7.txt 10 10020015 I319 11-JUL-03 1 t8.txt 10 10020011 I319 11-JUN-04 2 t2.txt 7 10020013 I319 11-JUN-04 3 t3.txt 8 10020011 Iad307 11-JUN-03 1 t1.txt 5 10020011 Id310 12-JUN-03 1 t2
..................................................................................... 52 5.3 VAATED..................................................................................................................................... 53 5.4 SALVESTATUD PROTSEDUURID JA FUNKTSIOONID................................................................. 54 5.5 INDEKSID.................................................................................................................................. 55 5.5.1 ORACLE.................................................................................................................................. 55 5.6 JULGEOLEKUMEETMETE DISAIN............................................................................................. 55 5.6.1 ORACLE.................................................................................................................................. 55 5.7 ESIALGNE ANDMETE VARUNDAMISE JA TAASTAMISE STRATEEGIA.....................................
ORACLE SQL PL/SQL 13. ülesanne Ilma email'ideta tabeli loomine: CREATE TABLE yliopilased ( eesnimi VARCHAR2( 50), perenimi VARCHAR2( 50), email VARCHAR2( 50) ); INSERT INTO yliopilased ( eesnimi, perenimi) VALUES ( 'Vaino', 'Erilaid'); INSERT INTO yliopilased ( eesnimi, perenimi) VALUES ( 'Kristo', 'Harakas'); INSERT INTO yliopilased ( eesnimi, perenimi) VALUES ( 'Priit', 'Joorits'); INSERT INTO yliopilased ( eesnimi, perenimi) VALUES ( 'Paul', 'Joorits'); INSERT INTO yliopilased ( eesnimi, perenimi) VALUES ( 'Kristi', 'Karusaar'); INSERT INTO yliopilased ( eesnimi, perenimi) VALUES ( 'Kristjan', 'Laukasaar'); SELECT * FROM yliopilased; EESNIMI PERENIMI EMAIL -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- Vaino
8. Ülesanne 1. Delegeerige endale scott-i rollis olles tabelite lepikult.yliopilased, lepikult.koduylesanded ja lepikult.oppeained lugemisõigused. Logige andmebaasi enda kasutajatunnuse abil. GRANT SELECT ON lepikult.yliopilased to MinuKasutajaNimi; GRANT SELECT ON lepikult.koduylesanded to MinuKasutajaNimi; GRANT SELECT ON lepikult.oppeained to MinuKasutajaNimi; 2. Moodustage tabelite lepikult.yliopilased, lepikult.koduylesanded ja lepikult.oppeained abil kursuse „Oracle….” kohta tabel, kus on andmed kodutööde kohta – tudengite nimed, ID-koodid ja punktid kolme kodutöö eest (kui ühe kodutöö kohta on samalt tudengilt mitu saadetist, läheb kirja parim tulemus). Eraldi veerus on kolme töö eest saadud punktide summa. Arvestuse tingimuseks on, et ülesannete punktide summa peab olema vähemalt 14. Ülesande lahendamisel kasutage nii DDL kui ka DML-lauseid. // Loo tabel CREATE TABLE Oracle_tulemused (opilase_id CHAR(8),
Kõik kommentaarid