Vajad kellegagi rääkida?
Küsi julgelt abi LasteAbi
Logi sisse

ORACLE: SQL JA PLSQL 13 (0)

1 Hindamata
Punktid




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                                              Erilaid                       Kristo                                             Harakas                       Priit                                              Joorits                       Paul                                               Joorits                       Kristi                                             Karusaar                      Kristjan                                           Laukasaar                     6 rows selected. Programm: CREATE OR REPLACE procedure generate_email IS
    counter INTEGER;     temp_email VARCHAR2(50);
    e_email_not_unique EXCEPTION; PROCEDURE counter1
IS BEGIN
    SELECT COUNT(*)     INTO counter
    FROM yliopilased     WHERE email = temp_email || '' || '@itcollege.ee';
END counter1; BEGIN
    FOR y IN (SELECT * FROM yliopilased)      LOOP  


    temp_email := lower(substr(y.eesnimi, 1, 1)) || '' || lower(y.perenimi);         counter1;
        IF counter < 1 THEN             IF length(temp_email) < 8 THEN
                UPDATE yliopilased                 SET email = temp_email || '' || '@itcollege.ee'
                WHERE eesnimi = y.eesnimi;             ELSE
                UPDATE yliopilased                 SET email = substr(temp_email, 1, 8) || '' || '@itcollege.ee'
                WHERE eesnimi = y.eesnimi;             END IF;
        ELSE             temp_email := lower(substr(y.eesnimi, 1, 2)) || '' || 
lower(y.perenimi);             IF length(temp_email) > 8 THEN
                temp_email := substr(temp_email, 1, 8);                     counter1;
                IF counter < 1 THEN                     UPDATE yliopilased
                    SET email = temp_email || '' || '@itcollege.ee'                     WHERE eesnimi = y.eesnimi;
                ELSE                     RAISE e_email_not_unique;
                END IF;                 ELSE
                counter1;                     IF counter < 1 THEN
                        UPDATE yliopilased                         SET email = temp_email || '' || '@itcollege.ee'
                        WHERE eesnimi = y.eesnimi;                     ELSE
                        RAISE e_email_not_unique;                     END IF;
            END IF;         END IF;      
    END LOOP; EXCEPTION
    WHEN e_email_not_unique THEN     dbms_output.put_line('Program was unable to generate an unique email!');
END generate_email; TULEMUS: >>> EXECUTE generate_email; PL/SQL procedure successfully completed. >>> SELECT * FROM yliopilased; EESNIMI                                            PERENIMI                      EMAIL                                             
--------------------------------------------------  -------------------------------------------------- 
-------------------------------------------------- Vaino                                              Erilaid                      
[email protected]                              Kristo                                             Harakas                      
[email protected]                              Priit                                              Joorits                      


[email protected]                              Paul                                               Joorits                      
[email protected]                              Kristi                                             Karusaar                     
[email protected]                              Kristjan                                           Laukasaar                    
[email protected]                              6 rows selected. Lisan sarnase nime, et tuua ette erind: >>> INSERT INTO yliopilased (eesnimi, perenimi) VALUES ('Paulita', 'Joorits'); >>> EXECUTE generate_email; Program was unable to generate an unique email! PL/SQL procedure successfully completed. >>> SELECT * FROM yliopilased; EESNIMI                                            PERENIMI                      EMAIL                                             
--------------------------------------------------  -------------------------------------------------- 
-------------------------------------------------- Vaino                                              Erilaid                      
[email protected]                              Kristo                                             Harakas                      
[email protected]                              Priit                                              Joorits                      
[email protected]                              Paul                                               Joorits                      
[email protected]                              Kristi                                             Karusaar                     
[email protected]                              Kristjan                                           Laukasaar                    
[email protected]                              Paulita                                            Joorits                       7 rows selected. 
ORACLE-SQL JA PLSQL 13 #1 ORACLE-SQL JA PLSQL 13 #2 ORACLE-SQL JA PLSQL 13 #3
Punktid 50 punkti Autor soovib selle materjali allalaadimise eest saada 50 punkti.
Leheküljed ~ 3 lehte Lehekülgede arv dokumendis
Aeg2022-05-01 Kuupäev, millal dokument üles laeti
Allalaadimisi 2 laadimist Kokku alla laetud
Kommentaarid 0 arvamust Teiste kasutajate poolt lisatud kommentaarid
Autor egnaro Õppematerjali autor

Sarnased õppematerjalid

ICA0016 Oracle programmeerimiskeeled SQL ja PLSQL 13-Ülesanne
3
pdf

ICA0016 Oracle programmeerimiskeeled SQL ja PLSQL 13. Ülesanne

13. Ülesanne 1. Koostage tabel, mis sisaldab üliõpilaste ees-ja perekonnanimesid (10 nime ) ning algselt tühja veergu email. CREATE TABLE yliopilased ( eesnimi VARCHAR2(50), perenimi VARCHAR2(50), email VARCHAR2(50) ); INSERT INTO yliopilased VALUES ('Anna','Rong', NULL); INSERT INTO yliopilased VALUES ('Sanne','Kanne', NULL); INSERT INTO yliopilased VALUES ('Reelika','Uus', NULL); INSERT INTO yliopilased VALUES ('Robin','Hood', NULL); INSERT INTO yliopilased VALUES ('Jaak','Mae', NULL); INSERT INTO yliopilased VALUES ('Toivo','Kalevipoeg', NULL); INSERT INTO yliopilased VALUES ('Kalev','Toivopoeg', NULL); INSERT INTO yliopilased VALUES ('Tiit','Vest', NULL); INSERT INTO yliopilased VALUES ('Peeter','Paan', NULL); INSERT INTO yliopilased VALUES ('Karlsson','Katuselt', NULL);’ SELECT * FROM yliopilased; 2. Seejärel koostage PL/SQL-programm, mis moodustab igale üliõpilasele e-aadressi järgneva eeskirja kohaselt. a) üliõpilase eesn

Oracle programmeerimiskeeled sql ja plsql
14 yl
19
txt

14_yl

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

Oracle programmeerimiskeeled sql ja plsql
Andmebaasid
12
txt

Andmebaasid

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

Informaatika
ICA0016 Oracle programmeerimiskeeled SQL ja PLSQL 8-ülesanne
3
pdf

ICA0016 Oracle programmeerimiskeeled SQL ja PLSQL 8. ülesanne

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),

Oracle programmeerimiskeeled sql ja plsql
Andmebaaside programmeerimine
81
doc

Andmebaaside programmeerimine

..................................................................................... 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.....................................

Andmebaaside projekteerimine
Andmbaasid
11
docx

Andmbaasid

--Taavet Tamm(a72028) --ylesanne 4. --1. Leida klubi Laudnikud liikmete nimekiri (eesnimi ja perenimi) tähestiku järjekorras. SELECT eesnimi, perenimi FROM isik, klubi WHERE klubi.nimi = 'Laudnikud' ORDER BY perenimi asc; --2. Leida klubi Laudnikud liikmete arv. SELECT COUNT(*) AS "Klubi Laudnikud liikmete arv" FROM isik WHERE klubi = '51'; --Leida V-tähega algavate klubide M-tähega algavate eesnimedega isikute perekonnanimed. SELECT distinct perenimi FROM isik, klubi WHERE klubi.nimi like 'V%' and eesnimi like 'M%' ORDER BY perenimi asc; --4. Leida kõige esimesena alanud partii algamise aeg. SELECT min(Algushetk) FROM partii; --5. Leida partiide mängijad (valge ja must), mis algasid 04. märtsil ajavahemikus 9:00 kuni 11:00. SELECT partii.ID AS "Partii ID", perenimi || ', ' || eesnimi AS "Nimi", isik.ID AS "Isiku ID", must, valge FROM isik, partii WHERE isik.id in (partii.must,partii.valge) AND partii.algushetk between '2005-03-04 09:00:00.000' and

Andmebaasid
ICA0016 Oracle programmeerimiskeeled SQL ja PLSQL 11-ülesanne
3
pdf

ICA0016 Oracle programmeerimiskeeled SQL ja PLSQL 11. ülesanne

Ülesanne 11 1. Kirjutage PL/SQL-programm, mis leiab tabelist kandidaadid, mitu inimest on sündinud 1982. a. 1. kuus, 1982. a. 2. kuus jne. kuni 1984.a. 12. kuus --- ylesanne11-1.psql ---- SET SERVEROUTPUT ON declare alates_aasta constant integer := 82; kuni_aasta constant integer := 84; alates_kuu constant integer := 1; kuni_kuu constant integer := 12; tudengite_arv integer; begin for aasta in alates_aasta .. kuni_aasta loop for kuu in alates_kuu .. kuni_kuu loop select count(*) into tudengite_arv from scott.kandidaadid where substr(ID,2,2) = aasta and substr(ID,4,2) = kuu; dbms_output.put_line('19' || aasta || '. a. ' || kuu || '. kuus on sündinud ' || tudengite_arv || ' kandidaati.'); end loop; end loop; end; / --- ylesanne11-1.ps

Oracle programmeerimiskeeled sql ja plsql
Andmebaasid
15
pdf

Andmebaasid

Andmebaasid Laenutamine CREATE TABLE LAENUTAMINE ( Laenamise_id INT not null auto_increment, Kuupäev date, Raamatu_ID INT, Lugeja_ID INT, Tähtaeg date, Tagastamine date, PRIMARY KEY (Laenamise_id), FOREIGN KEY (Lugeja_ID) REFERENCES LUGEJA(Lugeja_ID), FOREIGN KEY (Raamatu_id) REFERENCES Raamat(Raamatu_ID)); Lisa 10 kirjet. INSERT INTO LAENUTAMINE(Kuupäev,Lugeja_ID,Raamatu_ID,Tähtaeg) VALUES(curdate(),1,3,adddate(curdate(), interval 21 day)); RAAMAT CREATE TABLE RAAMAT ( Raamatu_ID INT AUTO_INCREMENT, Pealkiri VARCHAR(150) NOT NULL, Autor VARCHAR(100) NOT NULL, Aasta YEAR NOT NULL, Koht VARCHAR(50), Lk_arv INT, Keel VARCHAR(50), Hind FLOAT, PRIMARY KEY (Raamatu_ID)); Kirjed: INSERT INTO RAAMAT (Pealkiri, Autor, Aasta, Koht, Lk_arv, Keel, Hin

Andmebaasid




Meedia

Kommentaarid (0)

Kommentaarid sellele materjalile puuduvad. Ole esimene ja kommenteeri



Sellel veebilehel kasutatakse küpsiseid. Kasutamist jätkates nõustute küpsiste ja veebilehe üldtingimustega Nõustun