M2 - Bases de dades / Exercicis UF2: Llenguatges SQL / Solucions T13
1. Crea una seqüència per a ser utilitzada en la clau primària de la taula DEPARTMENT. La seqüència començara en el número 60 i el seu màxim serà 200. Tindrà un increment de 10 en 10 i el nom DEPT_ID_SEQ.
CREATE SEQUENCE dept_id_seq START WITH 60 INCREMENT BY 10 MAXVALUE 200;
2. Fes un script que mostri la següent informació sobre les teves seqüències: nom, valor màxim, increment i darrer registre. Anomena el script p13q2.sql. Executa el script.
EDIT p13q2.sql SELECT sequence_name, max_value, increment_by, last_number FROM user_sequences / START p13q2.sql
3. Escriu un script interactiu per afegir un registre en la taula DEPARTMENT. Anomena'l p13q3.sql. Utilitza la seqüència DEPT_ID_SEQ per a la columna ID. Crea un missatge personalitzat per introduir el nom del departament. Executa el script. Afegeix els departament "Educació", i "Administració". Comprova les insercions.
EDIT p13q3.sql SET ECHO OFF SET VERIFY OFF ACCEPT name PROMPT 'Please enter the department name: ' INSERT INTO department (id, name) VALUES (dept_id_seq.NEXTVAL, '&name') / SET VERIFY ON SET ECHO ON START p13q3.sql SELECT * FROM department;
4. Crea un índex no únic sobre FOREIGN KEY de la taula EMPLOYEE.
CREATE INDEX employee_dept_id_idx ON employee (dept_id);
5. Mostra els índexs i la seva unicitat de la taula EMPLOYEE, utilitzant el diccionari de dades. Salva la sentència en un script anomenat pl13q5.sql.
SELECT index_name, table_name, uniqueness FROM user_indexes WHERE table_name = 'EMPLOYEE'; SAVE p13q5.sql
6. Crea una restricció PRIMARY KEY sobre la taula DEPARTMENT. Comprova la creació de la restricció en el diccionari de dades executant el script p11q4.sql. Modifica i comprova la unicitat del índex en el diccionari de dades, executant el script p13q5.sql.
ALTER TABLE department ADD CONSTRAINT department_id_pk PRIMARY KEY (id); START p11q4.sql START p13q5.sql