1. Následující anonymní blok PL/SQL kódu vrátí příjmení zaměstnance, jeho zaměstnanecké id je 100. Je toto tvrzení správné nebo chybné? DECLARE v_last_name employees.last_name%type; employee_id employees.employee_id%type := 100; BEGIN SELECT last_name INTO v_last_name WHERE employee_id = employee_id; END; Správné Chybné 2. Máme následující části PL/SQL bloku: 1. END; 2. EXCEPTION 3. DECLARE 4. BEGIN. Seřaďte je správně dle jejich použití: 2,1,4,3 3,2,4,1 4,3,2,1 3,4,2,1 3. Každý anonymní blok v PL/SQL musí začínat klíčovým slovem DECLARE. Je toto tvrzení správné nebo chybné? Vyberte libovolný počet možných odpovědí. Správná nemusí být žádná, ale také mohou být správné všechny. Chybné Správné 4. Proveďte nasledující příkaz: CREATE TABLE emp_load (employee_number CHAR(5), employee_dob CHAR(20), employee_last_name CHAR(20), employee_first_name CHAR(15), employee_middle_name CHAR(15), employee_hire_date DATE) ORGANIZATION EXTERNAL (TYPE ORACLE_LOADER
DEFAULT DIRECTORY def_dir1 ACCESS PARAMETERS (RECORDS DELIMITED BY NEWLINE FIELDS (employee_number CHAR(2), employee_dob CHAR(20), employee_last_name CHAR(18), employee_first_name CHAR(11), employee_middle_name CHAR(11), employee_hire_date CHAR(10) date_format DATE mask "mm/dd/yyyy")) LOCATION ('info.dat')); Jaký druh tabulky je zde vytvářen? Žádný. Tento příkaz je chybný. Externí tabulka s daty uloženými v souboru mimo databázi. Pohled. Externí tabulka s daty uloženými v souboru uvnitř databáze. 5. DCL, což je zkratka pro Data Control Language, umožňuje: používání výrazu CONROL TRANSACTION. používání příkazu ALTER. používání příkazu TRUNCATE. administrátorovi databáze schopnost poskytovat práva uživatelům. 6. Který z následujících příkazu korektně změní jméno tabulky LOCATIONS na NEW_LOCATIONS? RENAME LOCATIONS TO NEW_LOCATIONS ALTER TABLE LOCATIONS RENAME NEW_LOCATIONS // tady chybí RENAME TO NEW_LOCATIONS Žádný; tabulky nelze přejmenovávat, lze je pouze vytvářet upravovat a odstraňovat. 7. Které z nasledujících datových typů jsou validní pro Oracle? TIMESTAMP, LOB, VARCHAR2, NUMBER DATE, TIMESTAMP WITH LOCAL TIMEZONE, BLOB SYSDATE, TIMESTAMP, DATE, LOCAL TIMEZONE DATE, BLOB, LOB, VARCHAR2
8. SQL příkaz ALTER TABLE EMPLOYEES DROP COLUMN SALARY odstraní všechny řádky z tabulky EMPLOYEES. Pravda nebo nepravda? Pravda Nepravda 9. Co je to hodnota NULL? Neznámá hodnota Prázdné místo Absolutní nula Známá hodnota menší než nula 10. Které klíčové slovo může být přidáno do dotazu, aby byla navrácena jen podmnožina dat? ALL WHERE WHEN EVERYONE 11. Strukturu tabulky můžeme zobrazit pomocí příkazu. Desc and Describe Describe Desc Dis 12. Jaká návratová hodnotu bude mít následující dotaz? SELECT last_name, salary WHERE salary < 3500; LAST_NAME SALARY Davies 3100
Všechny uvedené LAST_NAME SALARY Rajas 3500 LAST_NAME SALARY King 5000 13. Který příkaz se použije pro vložení řádku do tabulky? ADD ADD_ROW NEW_ROW INSERT 14. Operátor zřetězení... Je representován dvěma svislými čarami ( ). Sdružuje sloupce nebo znakové řetězce do nového sloupce. Všechny uvedené možnosti jsou pravdivé. Vytváří výsledný sloupec, který je znakový výraz. 15. Který z následujících dotazů je funkční? SELECT first_name ' ' last_name NAME, department_id DEPARTMENT, salary*12 'ANNUAL SALARY' WHERE last_name = 'King'; SELECT first_name ' ' last_name NAME, department_id DEPARTMENT, salary*12 "ANNUAL SALARY" WHERE last_name = 'King';
SELECT first_name ' ' last_name NAME, department_id DEPARTMENT, salary*12 "ANNUAL SALARY" WHERE name = 'King'; SELECT first_name ' ' last_name NAME, department_id DEPARTMENT, salary*12 'ANNUAL SALARY' WHERE name = 'King'; 16. SQL dotaz umožňuje: Shlukování a mazání Projekci a aktualizaci Selekci a projekci Nic z uvedeného Selekci a protekci 17. Která z následujících omezení nevybere číslo 10? Žádná z uvedených WHERE hours IN (8,9,10) WHERE hours BETWEEN 10 AND 20 WHERE hours <= 10 WHERE hours <> 10 18. Tabulka STYLES obsahuje tato data: STYLE_ID STYLE_NAME CATEGORY COST 895840 SANDAL 85940 12.00 968950 SANDAL 85909 10.00
869506 SANDAL 89690 15.00 809090 LOAFER 89098 10.00 890890 LOAFER 89789 14.00 857689 HEEL 85940 11.00 758960 SANDAL 86979 12.00 Výsledkem dotazu byla hodnota 79. Který skript byl použit? SELECT SUBSTR(category, -2,2) FROM styles WHERE style_id = 758960; SELECT SUBSTR(category, 2,2) FROM styles WHERE style_id = 895840; SELECT INSTR(category, 2,2) FROM styles WHERE style_id = 895840; SELECT INSTR(category, -2,2) FROM styles WHERE style_id = 895840; 19. Vemte v úvahu tento dotaz? SELECT a.lname ', ' a.fname as "Patient", b.lname ', ' b.fname as "Physician", c.admission FROM patient a JOIN physician b ON (b.physician_id = c.physician_id) JOIN admission c ON (a.patient_id = c.patient_id); Která klauzule způsobí chybu? JOIN physician b ON (b.physician_id = c.physician_id); JOIN admission c ON (a.patient_id = c.patient_id) 20. Použili jste následující dotaz: SELECT INSTR ('organizational sales', 'al') // hledá na jaké pozici je to al, tedy je na 13. pozici FROM dual; Kterou hodnotu tento dotaz navrátí? 13 2
17 1 21. Je dána tabulka TRUCKS: TRUCKS: TYPE VARCHAR2(30) YEAR DATE MODEL VARCHAR2(20) PRICE NUMBER(10) Která SQL dotaz vrátí průměrnou cenu pro modely 4x4? SELECT AVG(price) FROM trucks WHERE model IS 4x4; SELECT AVG(price) FROM trucks WHERE model = '4x4'; SELECT AVG(price) FROM trucks WHERE model IS '4x4'; SELECT AVG(price), model FROM trucks WHERE model IS '4x4'; 22. Který z následujících SQL dotazů správně zobrazí příjmení a počet týdnů od data zaměstnání pro všechny zaměstnance oddělení 90? SELECT last name, (SYSDATE-hire_date)/7 DISPLAY WEEKS WHERE department id = 90; SELECT last_name, (SYSDATE-hire_date)/7 AS WEEKS WHERE department_id = 90;
SELECT last_name, # of WEEKS WHERE department_id = 90; SELECT last_name, (SYSDATE-hire_date)AS WEEK WHERE department_id = 90; 23. Vytvořili jste tabulky CUSTOMERS a ORDERS pomocí tohoto skriptu: CREATE TABLE customers (custid varchar2(5), companyname varchar2(30), contactname varchar2(30), address varchar2(30), city varchar2(20), state varchar2(30), phone varchar2(20), constraint pk_customers_01 primary key (custid)); CREATE TABLE orders (orderid varchar2(5) constraint pk_orders_01 primary key, orderdate date, total number(15), custid varchar2(5) references customers (custid)); Máte vytvořit report o objednávkách zákazníků, kteří sídlí v Nashville. Který dotaz použijete? SELECT custid, companyname FROM customers WHERE city = 'Nashville'; SELECT orderid, orderdate, total FROM orders WHERE city = 'Nashville'; SELECT orderid, orderdate, total FROM orders o JOIN customers c ON o.custid = c.custid WHERE city = 'Nashville'; SELECT orderid, orderdate, total FROM orders o NATURAL JOIN customers c ON o.custid = c.custid WHERE city = 'Nashville'; 24. Vyhodnoťte následující dotaz: SELECT COUNT(*) FROM products;
Které tvrzení je pravdivé? Bude genrován erorr kvůli chybějící části WHERE. Zobrazí se počet unikátních PRODUCT_ID uložených v tabulce. Bude genrován erorr kvůli chybějící části GROUP BY. Zobrazí se počet řádků v tabulce. 25. Vyhodnoťte následující příkaz CREATE TABLE: 1. CREATE TABLE part( 2. part_id NUMBER, 3. part_name VARCHAR2(25), 4. manufacturer_id NUMBER(9), 5. retail_price NUMBER(7,2) NOT NULL, 6. CONSTRAINT part_id_pk PRIMARY KEY(part_id), 7. CONSTRAINT cost_nn NOT NULL(cost), 8. CONSTRAINT FOREIGN KEY (manufacturer_id) REFERENCES manufacturer(id)); Který řádek tohoto příkazu bude mít za následek chybu? 9 8 6 7 //za to null se nic nedává 26. Použijete-li RR fromát při psaní dotazu používajícím datum 27-OCT-17 a rok je 2001, jaký rok bude ve výsledku? 1901 2001 1917 2017 27. Tabulka LINE_ITEM osahuje následující sloupce: LINE_ITEM_ID NUMBER PRIMARY KEY PRODUCT_ID NUMBER(9) FOREIGN KEY references the ID column of the PRODUCT table QUANTITY NUMBER(9) UNIT_PRICE NUMBER(5,2) Potřebujete deaktivovat omezení FOREIGN KEY. Který z uvedených příkazů použijete?
ALTER TABLE line_item DROP CONSTRAINT product_id_fk; ALTER TABLE line_item DELETE CONSTRAINT product_id_fk; ALTER TABLE line_item DISABLE CONSTRAINT product_id_fk; ALTER TABLE line_item ENABLE CONSTRAINT product_id_fk; 28. Která dvě tvrzení ohledně atributů jsou pravdivá? Vyberte libovolný počet možných odpovědí. Správná nemusí být žádná, ale také mohou být správné všechny. Pokud nenáleží více než jedné entitě, musejí být atomické. Jsou určitého datového typu jako například číslo nebo řetězec znaků. Popisují, kvalifikuji, kvantifikují, klasifikují nebo specifikují entitu. Často se jedná o přídavná jména. 29. Entitně relační diagram je příkladem fyzického modelu. Pravda nebo nepravda? Pravda Nepravda 30. Pro který z následujících důvodů vytváříme konceptuální model? Vytváří prostor pro diskuzi. Obrázek vynahradí tisíc slov. Všechny ostatní Je základem pro návrh fyzického modelu databáze. Je důležitý z hlediska dokumentace.