Fragen zu anderen Schemaobjekten erstellen

1. Which database object among the following provides a layer of abstraction between the users and the data?

  1. Table
  2. Rows
  3. Views
  4. Synonyms

Answer: C, D. Ansichten und Synonyme speichern keine Daten selbst. Eine Ansicht ist eine temporäre oder virtuelle Tabelle, mit der Daten abgerufen werden, die in zugrunde liegenden Datenbanktabellen gespeichert sind.

2. Which of the following data base objects can generate serial numbers?

  1. Synonyms
  2. Views
  3. Tables
  4. Sequences

Answer: D. Eine Sequenz kann erstellt werden, um eine Reihe von Ganzzahlen zu generieren. Die von einer Sequenz generierten Werte können in jeder Tabelle gespeichert werden. Mit dem Befehl CREATE SEQUENCE wird eine Sequenz erstellt.

3. What is true about views?

  1. Sie sind gleich Tabellen
  2. Sie speichern Daten aus einer oder mehreren Tabellen
  3. Wir können SELECT und andere DMLs in einfachen Ansichten ausführen
  4. Ansichten haben denselben Namespace wie Tabellen. Daher können eine Tabelle und eine Ansicht nicht denselben Namen haben

Answer: C, D. DML-Operationen sind für Ansichten mit Gruppenfunktionen, einer GROUP BY-Klausel, der Pseudospalte ROWNUM oder dem Schlüsselwort DISTINCT nicht zulässig.

4. Why are views useful? (Choose the most appropriate answer)

  1. Weil sie kürzere Namen als Tabellen haben
  2. Um zu verhindern, dass Benutzer auf die Tabellenspalten zugreifen
  3. Benutzer-SQL vereinfachen
  4. Alles das oben Genannte

Answer: B, C. Eine Ansicht ist eine temporäre oder virtuelle Tabelle, mit der Daten abgerufen werden, die in zugrunde liegenden Datenbanktabellen gespeichert sind. Die Ansichtsabfrage muss jedes Mal ausgeführt werden, wenn die Ansicht verwendet wird. Eine Ansicht kann verwendet werden, um Abfragen zu vereinfachen oder den Zugriff auf vertrauliche Daten einzuschränken.

5. In which of the below scenarios, DML operations on a view are not possible?

  1. Die Ansicht enthält die GROUP BY-Klausel
  2. Basistabellen enthalten NOT NULL-Spalten, sind jedoch in der Ansichtsabfrage nicht ausgewählt
  3. Die Ansichtsabfrage verwendet die Pseudospalte ROWNUM
  4. Alles das oben Genannte

Answer: D. DML-Operationen sind für Ansichten mit Gruppenfunktionen, einer GROUP BY-Klausel, der Pseudospalte ROWNUM oder dem Schlüsselwort DISTINCT nicht zulässig.

6. Where can views get their data from?

  1. Tabellen aus demselben Schema
  2. Tabellen aus verschiedenen Schemata
  3. Sowohl A als auch B
  4. Nichts des oben Genannten

Answer: C.

Consider the given table structure and the following statement and answer the questions 7 to 9 that follow:

SQL> DESC employees
 Name			 Null?	  Type
 ----------------------- -------- ----------------
 EMPLOYEE_ID		 NOT NULL NUMBER(6)
 FIRST_NAME			  VARCHAR2(20)
 LAST_NAME		 NOT NULL VARCHAR2(25)
 EMAIL			 NOT NULL VARCHAR2(25)
 PHONE_NUMBER			  VARCHAR2(20)
 HIRE_DATE		 NOT NULL DATE
 JOB_ID 		 NOT NULL VARCHAR2(10)
 SALARY 			  NUMBER(8,2)
 COMMISSION_PCT 		  NUMBER(2,2)
 MANAGER_ID			  NUMBER(6)
 DEPARTMENT_ID			  NUMBER(4)
CREATE VIEW emp_details AS
SELECT hire_date, job, salary, department_id FROM employees;

7. You issue the below query. How many columns will the user see as a result of the below query?

SELECT * FROM emp_details WHERE department_id= 100;
  1. 0
  2. 1
  3. 2
  4. 4

Answer: D. Da die Ansichtsdefinition auf vier Spalten aus der Tabelle EMPLOYEES basiert, werden bei einer Abfrage in einer Ansicht mit allen Spalten nur diese vier Spalten angezeigt.

8. You need to get the department name in addition to the above 4 columns. Which of the following query will give you the required results?

  1. SELECT E.*, dept_name
    FROM departments D join emp_details E
    ON (E.department_id= D.dept_id);
  2. SELECT hire_date, job, salary, dept_name FROM emp_details
  3. Dies ist nicht möglich. Eine Ansicht kann nicht mit anderen Tabellen verknüpft werden
  4. Nichts des oben Genannten

Answer: A. Eine Ansicht kann mit anderen Tabellen oder Ansichten in einer SELECT-Abfrage verknüpft werden.

9. You need to find the maximum salary along with the department name in addition to the 4 columns selected in the view. Which of the following query will give you the required results?

  1. Select dept_name, e.salary
    FROM departments D join emp_details E
    On (E.department_id= D.dept_id);
  2. Select dept_name, max(salary)
    FROM departments D join emp_details E
    On (E.department_id= D.dept_id)
    Group by dept_name;
  3. Die Ansicht kann nicht in Abfragen mit Gruppenfunktionen angezeigt werden
  4. Select dept_name, max(salary)
    FROM departments D join emp_details E
    On (E.department_id= D.dept_id);

Answer: B.

10. What among the following is true about synonyms?

  1. ÖFFENTLICHE und PRIVATE Synonyme können für dieselbe Tabelle denselben Namen haben
  2. DROP SYNONYM entfernt ein Synonym
  3. DROP PUBLIC SYNONYM kann nur von einem SYSDBA ausgeführt werden
  4. Nichts des oben Genannten

Answer: A, C. Ein Synonym kann ein privates Synonym sein, mit dem Benutzer auf Objekte verweisen, die sie besitzen, oder ein öffentliches Synonym, mit dem Benutzer auf die Datenbankobjekte eines anderen Benutzers zugreifen. Nur SYSDBA oder ein Benutzer mit DBA-Berechtigungen kann ein öffentliches Synonym erstellen.

11. What is true about creating a view? (Choose the most appropriate answer)

  1. Eine Ansicht kann nur aus einer Tabelle erstellt werden
  2. Eine Ansicht kann nur aus einer Tabelle erstellt werden
  3. Eine Ansicht kann aus einer oder mehreren Tabellen oder Ansichten erstellt werden
  4. Nichts des oben Genannten

Answer: C. Eine Ansicht, die Ausdrücke oder Funktionen enthält oder mehrere Tabellen verknüpft, wird als komplexe Ansicht betrachtet. In einer komplexen Ansicht kann nur eine Tabelle aktualisiert werden.

12. Which of the following privileges are required to create views in one's own schema?

  1. CREATE TABLE-Systemberechtigung
  2. CREATE VIEW-Systemberechtigung
  3. ALTER VIEW-Systemberechtigung
  4. CREATE ANY VIEW-Systemprivilegien

Answer: B. Die Berechtigung CREATE VIEW wird von einem Benutzer benötigt, um eine Ansicht in einem eigenen Schema zu erstellen.

13. Which of the following privileges are required to create views in someone else's schema?

  1. JEDE ANSICHT ERSTELLEN
  2. ANSICHT ERSTELLEN
  3. Sowohl A als auch B
  4. Nichts des oben Genannten

Answer: A. CREATE ANY VIEW-Berechtigung ist für einen Benutzer erforderlich, um eine Ansicht im Schema eines anderen Benutzers zu erstellen.

14.Which of the following are supported for an object view or relational view?

  1. LOBs
  2. Objekttypen
  3. REF-Datentypen
  4. Alles das oben Genannte

Answer: D.

15. What among the following are different types of Views?

  1. Einfache Ansichten
  2. Komplexe Ansichten
  3. Sowohl A als auch B
  4. Nichts des oben Genannten

Answer: C. Einfache und komplexe Ansichten sind zwei Arten von Ansichten. Einfache Ansichten basieren auf einer Unterabfrage, die nur auf eine Tabelle verweist und keine Gruppenfunktionen, Ausdrücke oder GROUP BY-Klauseln enthält. Komplexe Ansichten basieren auf einer Unterabfrage, die Daten aus einer oder mehreren Tabellen abruft oder ableitet und Funktionen oder gruppierte Daten enthalten kann.

16. What is true about a simple view?

  1. DML-Anweisungen können meistens gegen einfache Ansichten ausgegeben werden
  2. Es gibt nur eine Quellbasistabelle
  3. Es werden keine Gruppenfunktionen verwendet
  4. Alles das oben Genannte

Answer: D. Einfache Ansichten basieren auf einer Unterabfrage, die nur auf eine Tabelle verweist und keine Gruppenfunktionen, Ausdrücke oder GROUP BY-Klauseln enthält.

17.What is true about a complex view?

  1. DML-Anweisungen können nicht für komplexe Ansichten ausgegeben werden
  2. Enthalten mehrere Basistabellen
  3. Aggregationen können nicht durchgeführt werden
  4. Alles das oben Genannte

Answer: D. Komplexe Ansichten basieren auf einer Unterabfrage, die Daten aus einer oder mehreren Tabellen abruft oder ableitet und Funktionen oder gruppierte Daten enthalten kann.

18.Which keyword combination should be used to implicitly drop a view (if it exists) and create a new view with the same name?

  1. ANSICHT ERSTELLEN
  2. ANSICHT ERSETZEN
  3. ANSICHT ERSTELLEN ODER ERSETZEN
  4. Nichts des oben Genannten

Answer: C. Die Option OR REPLACE benachrichtigt Oracle 11g, dass möglicherweise bereits eine Ansicht mit demselben Namen vorhanden ist. In diesem Fall sollte die vorherige Version der Ansicht durch die im neuen Befehl definierte ersetzt werden.

19.How is a view stored in the data dictionary?

  1. Als WHERE-Klausel
  2. Als CREATE-Anweisung
  3. Als UPDATE-Anweisung
  4. Als SELECT-Anweisung

Answer: D.

20.Which of the following can contain single-row functions?

  1. Inline-Ansichten
  2. Einfache Ansichten
  3. Komplexe Ansichten
  4. Zusammengesetzte Ansichten

Answer: A, B. Einzeilige Funktionen können sowohl in Inline- als auch in einfachen Ansichten verwendet werden.

21.Which of the following can contain a group of data?

  1. Zusammengesetzte Ansicht
  2. Einfache Ansicht
  3. Komplexe Ansicht
  4. Nichts des oben Genannten

Answer: C. Die komplexe Ansicht kann die Gruppenfunktion in der Abfrage verwenden.

22.What among the following is true about a View?

  1. Unterabfragen können in eine CREATE VIEW-Anweisung eingebettet werden
  2. Eine in der Anweisung CREATE VIEW verwendete Unterabfrage muss eine einfache SELECT-Syntax haben
  3. Sie können eine WHERE-Klausel nicht in einer Unterabfrage verwenden, wenn sie in der Anweisung CREATE VIEW verwendet wird
  4. Nichts des oben Genannten

Answer: A. Die Ansichtsdefinition kann Unterabfragen verwenden.

23.Which of the following can create a view even if the base table(s) does not exist?

  1. NOFORCE
  2. FORCE
  3. ODER ERSETZEN
  4. ANSICHT ERSTELLEN

Answer: B. Wenn Sie das Schlüsselwort FORCE in die CREATE-Klausel aufnehmen, erstellt Oracle 11g die Ansicht, obwohl keine Tabellen vorhanden sind, auf die verwiesen wird. NOFORCE ist der Standardmodus für den Befehl CREATE VIEW. Dies bedeutet, dass alle Tabellen und Spalten gültig sein müssen, sonst wird die Ansicht nicht erstellt.

24.Which of the following commands ensures that no DML operations can be performed on a view?

  1. NOFORCE
  2. FORCE
  3. NUR MIT LESEN
  4. ODER ERSETZEN

Answer: C. Die Option NUR MIT LESEN verhindert, dass DML-Vorgänge für die Ansicht ausgeführt werden. Diese Option wird häufig verwendet, wenn es wichtig ist, dass Benutzer nur Daten abfragen und keine Änderungen daran vornehmen können.

25.What is true about the NOFORCE option in CREATE VIEW statement?

  1. Es wird eine Ansicht erstellt, auch wenn die Basistabelle (n) nicht vorhanden sind.
  2. Eine Ansicht wird nur erstellt, wenn die Basistabelle (n) vorhanden sind.
  3. Dies ist die Standardeinstellung beim Erstellen einer Ansicht.
  4. Nichts des oben Genannten

Answer: B, C. NOFORCE ist der Standardmodus für den Befehl CREATE VIEW. Dies bedeutet, dass alle Tabellen und Spalten gültig sein müssen, sonst wird die Ansicht nicht erstellt.

26.What is true about the OR REPLACE keyword?

  1. Objektberechtigungen gehen verloren, wenn eine Ansicht mit diesem Schlüsselwort erstellt wird
  2. Es ist nicht erforderlich, die zuvor gewährten Objektberechtigungen erneut zu gewähren
  3. Weder von A noch von B.
  4. Nichts des oben Genannten

Answer: B. Die Option OR REPLACE benachrichtigt Oracle 11g, dass möglicherweise bereits eine Ansicht mit demselben Namen vorhanden ist. In diesem Fall sollte die vorherige Version der Ansicht durch die im neuen Befehl definierte ersetzt werden.

27.What is true with respect to accessing the below view? (Assume the table structure given)

SQL> DESC employees
 Name			 Null?	  Type
 ----------------------- -------- ----------------
 EMPLOYEE_ID		 NOT NULL NUMBER(6)
 FIRST_NAME			  VARCHAR2(20)
 LAST_NAME		 NOT NULL VARCHAR2(25)
 EMAIL			 NOT NULL VARCHAR2(25)
 PHONE_NUMBER			  VARCHAR2(20)
 HIRE_DATE		 NOT NULL DATE
 JOB_ID 		 NOT NULL VARCHAR2(10)
 SALARY 			  NUMBER(8,2)
 COMMISSION_PCT 		  NUMBER(2,2)
 MANAGER_ID			  NUMBER(6)
 DEPARTMENT_ID			  NUMBER(4)
CREATE VIEW salVU100
AS SELECT employee_id  ID_NUMBER, last_name NAME, salary*12 ANNUAL_SAL
FROM employees E 
WHERE department_id= 100;
  1. Auf die Ansicht muss über die ursprünglichen Spaltennamen zugegriffen werden, die in der Basistabelle definiert sind
  2. Auf die Ansicht muss über die in der Ansichtsabfrage angegebenen Aliase zugegriffen werden
  3. Ansicht ist eine einfache Ansicht
  4. Nichts des oben Genannten

Answer: B, C. Die Ansicht muss auf den Spaltenalias verweisen, wenn die Ansichtsdefinition einen Alias ​​für die Spalten enthält.

28.What is true with respect to accessing the below view? (Assume the table structure given)

SQL> DESC employees
 Name			 Null?	  Type
 ----------------------- -------- ----------------
 EMPLOYEE_ID		 NOT NULL NUMBER(6)
 FIRST_NAME			  VARCHAR2(20)
 LAST_NAME		 NOT NULL VARCHAR2(25)
 EMAIL			 NOT NULL VARCHAR2(25)
 PHONE_NUMBER			  VARCHAR2(20)
 HIRE_DATE		 NOT NULL DATE
 JOB_ID 		 NOT NULL VARCHAR2(10)
 SALARY 			  NUMBER(8,2)
 COMMISSION_PCT 		  NUMBER(2,2)
 MANAGER_ID			  NUMBER(6)
 DEPARTMENT_ID			  NUMBER(4)
CREATE VIEW salVU100 (ID_NUMBER, NAME, ANNUAL_SAL)
AS SELECT employee_id , last_name, salary*12 
FROM employees E 
WHERE department_id= 100;
  1. Es ist nicht zwingend erforderlich, dass die Anzahl der Aliase mit der Nr. Übereinstimmt. von Ausdrücken in der Unterabfrage
  2. Es ist zwingend erforderlich, dass die Nr. der aufgelisteten Aliase muss mit der Nr. übereinstimmen. der in der Unterabfrage ausgewählten Ausdrücke
  3. Beim Erstellen einer Ansicht müssen Aliase angegeben werden
  4. Nichts des oben Genannten

Answer: B. Wenn der Alias ​​im Ansichtskopf angegeben ist, muss in der SELECT-Abfrage dieselbe Anzahl von Spalten ausgewählt werden.

29. Consider the following statement and the given table structure:

SQL> DESC employees
 Name			 Null?	  Type
 ----------------------- -------- ----------------
 EMPLOYEE_ID		 NOT NULL NUMBER(6)
 FIRST_NAME			  VARCHAR2(20)
 LAST_NAME		 NOT NULL VARCHAR2(25)
 EMAIL			 NOT NULL VARCHAR2(25)
 PHONE_NUMBER			  VARCHAR2(20)
 HIRE_DATE		 NOT NULL DATE
 JOB_ID 		 NOT NULL VARCHAR2(10)
 SALARY 			  NUMBER(8,2)
 COMMISSION_PCT 		  NUMBER(2,2)
 MANAGER_ID			  NUMBER(6)
 DEPARTMENT_ID			  NUMBER(4)
SQL> DESC departments
 Name			 Null?	  Type
 ----------------------- -------- ----------------
 DEPARTMENT_ID		 NOT NULL NUMBER(4)
 DEPARTMENT_NAME	 NOT NULL VARCHAR2(30)
 MANAGER_ID			  NUMBER(6)
 LOCATION_ID			  NUMBER(4)
CREATE OR REPLACE VIEW empVU100
(ID_NUMBER, NAME, ANNUAL_SAL, DEPT_ID)
AS 
SELECT employee_id , first_name ||' '|| last_name, salary, department_id
FROM employees
WHERE department_id= 100;

Was gilt für die Spaltenaliasnamen wie in der obigen Abfrage?

  1. Spaltenaliasnamen werden in zufälliger Reihenfolge als Spalten in der Unterabfrage aufgelistet
  2. Spaltenaliasnamen werden in derselben Reihenfolge wie die Spalten in der Unterabfrage aufgelistet
  3. Bei Verwendung des Schlüsselworts CREATE OR REPLACE sind Spaltenaliasnamen obligatorisch
  4. Wir können keine Verkettung verwenden, wenn wir CREATE OR REPLACE verwenden

Answer: B.

Consider the following statement and answer the questions 30 to 34 that follow:

CREATE OR REPLACE VIEW dept_sum_vu (name, minsal, maxsal, avgsal) 
AS 
SELECT d.dept_name, MIN(e.salary), MAX(e.salary), AVG (e.salary)
FROM employees e JOIN departments d 
ON (e.department_id= d.dept_id)
GROUP BY d.dept_name;

30.What can be said about the statement given above?

  1. Für die Ansicht wurden alternative Namen angegeben
  2. Die Angabe alternativer Namen ist obligatorisch, wenn eine Spalte von einer Funktion oder einem Ausdruck abgeleitet ist
  3. Sowohl A als auch B
  4. Nichts des oben Genannten

Answer: C. Die Angabe des Aliasnamens empfiehlt sich, um die Lesbarkeit des Codes und der Ansichtsabfragen zu verbessern.

31.What will happen if the above statement is modified as below?

CREATE OR REPLACE VIEW dept_sum_vu(name, maxsal, minsal, avgsal)
AS 
SELECT d.dept_name, MIN(e.salary), MAX(e.salary), AVG (e.salary)
FROM employees e JOIN departments d 
ON (e.department_id= d.dept_id)
GROUP BY d.dept_name;
  1. Es wird nicht anders sein als die ursprüngliche Aussage
  2. Es wird erfolgreich ausgeführt und liefert dieselben Ergebnisse, ändert jedoch die Aliasnamen.
  3. Es wird ein ORA-Fehler ausgegeben
  4. Nichts des oben Genannten

Answer: B. Die Reihenfolge des Spaltenalias spielt keine große Rolle, da sie keine Verhaltensattribute enthalten.

32.Determine the output of the below DELETE statement.

DELETE FROM dept_sum_vu;
  1. Die Ansicht wird gelöscht
  2. Es werden alle Zeilen aus der Ansicht entfernt, aber die Struktur der Ansicht bleibt gleich
  3. Es wird ein ORA-Fehler ausgegeben
  4. Nichts des oben Genannten

Answer: C. Die Ansicht DEPT_SUM_VU ist eine komplexe Ansicht. DML-Operationen können nicht in einer komplexen Ansicht ausgeführt werden.

33.Suppose you modify the query given above to the following:

CREATE OR REPLACE VIEW dept_sum_vu(name, sal) 
AS 
SELECT d.dept_name, e.salary 
FROM employees e JOIN departments d 
ON (e.department_id= d.dept_id)
Where rownum < 10;

Welche Auswirkungen wird die Änderung haben?

  1. Die Ansicht kann aktualisiert werden, um die Werte in den Tabellen EMPLOYEES und DEPARTMENTS zu aktualisieren
  2. Daten in den Tabellen EMPLOYEES und DEPARTMENTS können nicht über die Ansicht gelöscht werden
  3. Daten in den Tabellen EMPLOYEES und DEPARTMENTS können über die Ansicht eingefügt werden
  4. Über die Ansicht kann eine Spalte zur Tabelle EMPLOYEES hinzugefügt werden

Answer: B. DML-Operationen können nicht für komplexe Ansichten ausgeführt werden. DEPT_SUM_VU ist eine komplexe Ansicht, da mehrere Tabellen verknüpft wurden. DDL-Operationen sind für Ansichten nicht möglich.

34.Suppose you select DISTINCT departments and employee salaries in the view query used in above question. What will be the outcome if you try to remove rows from the view dept_sum_vu?

  1. Die Zeilen werden fehlerfrei entfernt
  2. Nur die ersten 10 Zeilen werden entfernt
  3. Die Zeilen können nicht gelöscht werden.
  4. Nichts des oben Genannten

Answer: C. Die Ansicht DEPT_SUM_VU ist immer noch eine komplexe Ansicht, da das Schlüsselwort DISTINCT verwendet wird. Daher sind DML-Operationen nicht möglich.

35.When can the rows from a view be removed?

  1. Das Löschen von Zeilen durch eine Ansicht ist nicht möglich
  2. Es sollte eine einfache Ansicht sein
  3. Es sollte eine komplexe Ansicht sein
  4. Nichts des oben Genannten

Answer: B. DML-Operationen sind nur in einfachen Ansichten möglich.

36.When can the data in a view not be modified?

  1. Wenn es Gruppenausdrücke gibt
  2. Wenn es eine GROUP BY-Klausel gibt
  3. Wenn ROWNUM in der Ansichtsabfrage verwendet wird
  4. Alles das oben Genannte

Answer: D. UPDATE ist in einer Ansicht mit Gruppenfunktionen, Pseudospalten oder dem Schlüsselwort DISTINCT nicht möglich.

37. The JOB_HISTORY table is owned by a user "Andy". Andy grants the SELECT privilege on the JOB_HISTORY table to another user "HR". Which statement would create a synonym EMP_JOBS so that "HR" can execute the following query successfully?(Assume the structure of tables as given)

SQL> desc job_history
 Name			 Null?	  Type
 ----------------------- -------- ----------------
 EMPLOYEE_ID		 NOT NULL NUMBER(6)
 START_DATE		 NOT NULL DATE
 END_DATE		 NOT NULL DATE
 JOB_ID 		 NOT NULL VARCHAR2(10)
 DEPARTMENT_ID			  NUMBER(4)
SELECT * from EMP_JOBS;
  1. Andy gibt heraus -
    CREATE SYNONYM EMP_JOBS for JOB_HISTORY
  2. HR-Fragen -
    CREATE SYNONYM EMP_JOBS for andy.JOB_HISTORY
  3. HR-Fragen -
    CREATE PUBLIC SYNONYM EMP_JOBS FOR andy.JOB_HISTORY
  4. Nichts des oben Genannten

Answer: B. Nur SYSDBA oder ein Benutzer mit DBA-Berechtigungen kann öffentliche Synonyme erstellen.

38.Which keyword can assure that the DML operations performed on the view stay in the domain of the view?

  1. ODER ERSETZEN
  2. CREATE
  3. MIT CHECK-OPTION
  4. Nichts des oben Genannten

Answer: C. Die Einschränkung WITH CHECK OPTION stellt sicher, dass alle für die Ansicht ausgeführten DML-Vorgänge (z. B. Hinzufügen von Zeilen oder Ändern von Daten) die Ansicht nicht daran hindern, auf die Zeile zuzugreifen, da sie die Bedingung in der WHERE-Klausel nicht mehr erfüllt.

Consider the following table structure and the given statement and answer the questions 39 and 40 that follow:

SQL> DESC employees
 Name			 Null?	  Type
 ----------------------- -------- ----------------
 EMPLOYEE_ID		 NOT NULL NUMBER(6)
 FIRST_NAME			  VARCHAR2(20)
 LAST_NAME		 NOT NULL VARCHAR2(25)
 EMAIL			 NOT NULL VARCHAR2(25)
 PHONE_NUMBER			  VARCHAR2(20)
 HIRE_DATE		 NOT NULL DATE
 JOB_ID 		 NOT NULL VARCHAR2(10)
 SALARY 			  NUMBER(8,2)
 COMMISSION_PCT 		  NUMBER(2,2)
 MANAGER_ID			  NUMBER(6)
 DEPARTMENT_ID			  NUMBER(4)
CREATE OR REPLACE VIEW empvu100
AS 
SELECT * FROM employees 
WHERE department_id= 100
WITH CHECK OPTION CONSTRAINT empvu100_ck;

39.What will the above statement do?

  1. Dadurch können die Benutzer in allen Abteilungen INSERT oder UPDATE ausführen
  2. Der Benutzer kann INSERT oder UPDATE für jede Zeile mit Abteilung 100 ausführen
  3. Der Benutzer kann jede Zeile in der Mitarbeitertabelle AKTUALISIEREN
  4. Der Benutzer kann Zeilen ohne Einschränkung in die Mitarbeitertabelle einfügen

Answer: B. Die Einschränkung WITH CHECK OPTION stellt sicher, dass alle für die Ansicht ausgeführten DML-Vorgänge (z. B. Hinzufügen von Zeilen oder Ändern von Daten) die Ansicht nicht daran hindern, auf die Zeile zuzugreifen, da sie die Bedingung in der WHERE-Klausel nicht mehr erfüllt. Ein ORA-Fehler wird ausgelöst, wenn ein INSERT oder UPDATE in einer Zeile mit einer anderen Abteilungs-ID als 100 ausgeführt wird.

40.Suppose you fire an UPDATE statement as shown below:

UPDATE empvu100
Set department_id = 200
Where employee_id  = 121;

Was wird das Ergebnis dieser Aussage sein?

  1. Es werden keine Zeilen aktualisiert
  2. Ein ORA-Fehler wird ausgelöst
  3. Sowohl A als auch B
  4. Nichts des oben Genannten

Answer: C. Wenn die Ansicht mit CHECK OPTION aktualisiert wird und der Wert des neuen Datensatzes den Umfang der Ansicht verletzt, wird die ORA-Ausnahme "ORA-01402: Ansicht WITH CHECK OPTION where-Klauselverletzung" ausgelöst.

41.What is true about the WITH CHECK CONSTRAINT?

  1. INSERTs oder UPDATEs, die über die Ansicht ausgeführt werden, können keine Zeilen erstellen, die die Ansicht nicht auswählen kann
  2. Nur INSERTs, die über die Ansicht ausgeführt werden, können keine Zeilen erstellen, die von der Ansicht nicht ausgewählt werden können
  3. Nur UPDATEs, die über die Ansicht ausgeführt werden, können keine Zeilen erstellen, die von der Ansicht nicht ausgewählt werden können
  4. Nichts des oben Genannten

Answer: A.

42.How can you prevent DML operations on a View?

  1. Durch Definieren einer WITH CHECK OPTION-Einschränkung
  2. Durch Definieren einer Option NUR MIT LESEN
  3. Weder von A noch von B.
  4. Nichts des oben Genannten

Answer: B. Die Option NUR MIT LESEN verhindert, dass DML-Vorgänge für die Ansicht ausgeführt werden. Diese Option wird häufig verwendet, wenn es wichtig ist, dass Benutzer nur Daten abfragen und keine Änderungen daran vornehmen können.

Consider the table structure and the given statement and answer the questions 43, 44 and 45 that follow:

SQL> DESC employees
 Name			 Null?	  Type
 ----------------------- -------- ----------------
 EMPLOYEE_ID		 NOT NULL NUMBER(6)
 FIRST_NAME			  VARCHAR2(20)
 LAST_NAME		 NOT NULL VARCHAR2(25)
 EMAIL			 NOT NULL VARCHAR2(25)
 PHONE_NUMBER			  VARCHAR2(20)
 HIRE_DATE		 NOT NULL DATE
 JOB_ID 		 NOT NULL VARCHAR2(10)
 SALARY 			  NUMBER(8,2)
 COMMISSION_PCT 		  NUMBER(2,2)
 MANAGER_ID			  NUMBER(6)
 DEPARTMENT_ID			  NUMBER(4)
CREATE OR REPLACE empvu100(employee_id , first_name, job)
AS 
SELECT employee_id , last_name, job
FROM employees
WHERE department_id = 100
WITH READ ONLY;

43.What is true about the above statement?

  1. Die Ansicht wird nicht erstellt
  2. Die INSERT-Operation in dieser Ansicht löst einen ORA-Fehler aus
  3. Beim AKTUALISIEREN der Zeilen für alle Mitarbeiter in Abteilung 100 wird ein ORA-Fehler ausgegeben
  4. Nichts des oben Genannten

Answer: B, C. DML-Operationen sind in der Ansicht nicht zulässig, die mit der Option NUR LESEN erstellt wurden.

44.How many rows can be deleted from the view as shown above?

  1. Alle Zeilen der Ansicht
  2. Alle Zeilen nur der Abteilung 100
  3. Keine Zeilen
  4. Nichts des oben Genannten

Answer: C. DML-Operationen sind in der Ansicht nicht zulässig, die mit der Option NUR LESEN erstellt wurden.

45.Which of the following statements will drop the view created as above?

  1. DROP READ ONLY VIEW empvu100;
  2. DROP NOFORCE empvu100;
  3. DROP VIEW empvu100;
  4. Nichts des oben Genannten

Answer: C. Die schreibgeschützte Ansicht kann mit dem Befehl DROP VIEW gelöscht werden.

46.What is true about dropping a View?

  1. Die Spalten in der Ansicht aus den Basistabellen werden ebenfalls gelöscht
  2. Die Definition der Ansicht wird aus der Datenbank entfernt
  3. Das Löschen einer Ansicht hat keine Auswirkung auf die zugrunde liegende Basistabelle
  4. Nichts des oben Genannten

Answer: B, C.

47.Which of the following privileges should a user have to drop a view?

  1. JEDE ANSICHT ERSTELLEN
  2. ANSICHT ERSTELLEN
  3. JEDE ANSICHT TROPFEN
  4. TROPFENANSICHT

Answer: C.

48.What is true about sequences?

  1. Es werden ganze Zahlen generiert
  2. Es ist ein gemeinsam nutzbares Objekt
  3. Kann verwendet werden, um einen PRIMARY KEY-Wert zu erstellen
  4. Alles das oben Genannte

Answer: D. Eine Sequenz beschleunigt die Effizienz des Zugriffs auf Sequenzwerte, wenn sie im Speicher zwischengespeichert wird

49.What is true about a sequence?

  1. Es wird erstellt, wenn die Oracle-Datenbank installiert wird
  2. Es wird von einem Benutzer erstellt, der über die Systemberechtigung CREATE SEQUENCE verfügt
  3. Es kann nicht von mehr als zwei Benutzern gemeinsam genutzt werden
  4. Es wird automatisch gelöscht, wenn die Datenbank getrennt wird.

Answer: B, C. Das Systemprivileg CREATE SEQUENCE wird von einem Benutzer benötigt, um eine Sequenz in seinem eigenen Schema zu erstellen, die von anderen Benutzern nicht gemeinsam genutzt werden kann.

50.What among the following options is true about Sequences?

  1. Die durch eine Sequenz für eine Tabelle generierten Ganzzahlen können nicht von anderen Tabellen verwendet werden
  2. Eine Sequenz kann nur inkrementiert werden
  3. Eine Sequenz wird ungültig, wenn eine andere Sequenz dieselben Ganzzahlen generiert
  4. Eine Sequenz kann von vielen Tabellen verwendet und inkrementiert oder dekrementiert werden

Answer: D.

Consider the following statement and answer the questions 51 to 59 that follow:

CREATE SEQUENCE dept_deptid_seq
INCREMENT BY 100
START WITH 101
MAXVALUE 9999
NOCACHE
NOCYCLE;

51.What will be the first value generated by this sequence?

  1. 1
  2. 100
  3. 101
  4. 9999

Answer: C. Die START WITH-Klausel legt den Startwert für die Sequenz fest. Oracle 11g beginnt jede Sequenz mit 1, sofern in der START WITH-Klausel kein anderer Wert angegeben ist.

52.What can be the last value generated by this sequence?

  1. 0
  2. 100
  3. 101
  4. 9999

Answer: D. Die Klauseln MINVALUE und MAXVALUE legen einen minimalen oder maximalen Wert für die Sequenz fest.

53.What will be the 2nd value generated by this sequence?

  1. 102
  2. 100
  3. 99
  4. 9999

Answer: A. Die INCREMENT BY-Klausel gibt das Intervall zwischen zwei aufeinander folgenden Werten an. Wenn die Sequenz um einen positiven Wert erhöht wird, sind die von der Sequenz generierten Werte in aufsteigender Reihenfolge. Wenn jedoch ein negativer Wert angegeben wird, sind die von der Sequenz generierten Werte in absteigender Reihenfolge. Wenn die INCREMENT BY-Klausel beim Erstellen der Sequenz nicht enthalten ist, wird die Standardeinstellung verwendet, die die Sequenz für jede generierte Ganzzahl um eins erhöht.

54.What will be the next value after the maximum integer 9999 is reached by this sequence?

  1. 101
  2. Kein Wert
  3. Es wird ein ORA-Fehler ausgegeben
  4. Nichts des oben Genannten

Answer: B. Die Optionen CYCLE und NOCYCLE legen fest, ob Oracle 11g nach Erreichen des Minimal- oder Maximalwerts mit der Neuausgabe von Werten aus der Sequenz beginnen soll.

55.How many values will Oracle pre allocate in memory based on the sequence given above?

  1. 20
  2. 0
  3. 100
  4. 9999

Answer: A.

56.You execute the below query:

SELECT dept_depid_seq.NEXTVAL from dual;
  1. 200
  2. 101
  3. 9999
  4. 201

Answer: D. Die NEXTVAL-Pseudospalte generiert die nächste eindeutige Ganzzahl der Sequenz.

57.You execute the below query:

SELECT dept_depid_seq.CURRVAL from dual;
  1. 200
  2. 101
  3. 9999
  4. 201

Answer: A. Die Pseudospalte CURRVAL generiert die aktuelle eindeutige Ganzzahl, die bereits von der Sequenz generiert wurde.

58.Suppose you need to change the start value of this sequence to 1000. Which of the following statements will help?

  1. ALTER dept_deptid_seq
    INCREMENT BY 100
    START WITH 1000
    MAXVALUE 9999
    NOCACHE
    NOCYCLE;
  2. Die Sequenz muss gelöscht und neu erstellt werden, um die Sequenz ab 1000 zu starten.
  3. ALTER SEQUENCE dept_deptid_seq
    START WITH 101
  4. ALTER SEQUENCE dept_deptid_seq
    INCREMENT BY 100
    START WITH 101
    CYCLE;

Answer: B. Die Startnummer einer Sequenz kann nicht geändert werden. Oracle löst die Ausnahme "ORA-02283: Startsequenznummer kann nicht geändert werden" aus.

59.Suppose that the above sequence is altered as below:

ALTER SEQUENCE dept_deptid_seq
INCREMENT BY 100
START WITH 101
MAXVALUE 99
NOCACHE
NOCYCLE;

Was wird das Ergebnis dieser Änderung sein?

  1. ORA-Fehler
  2. Der Maximalwert für die geänderte Sequenz beträgt jetzt 99
  3. Weder von A noch von B.
  4. Nichts des oben Genannten

Answer: A. Der MAXVALUE darf beim Ändern einer Sequenz nicht kleiner als der Wert START WITH sein.

60.When can we use the CYCLE option in Sequences?

  1. Wenn wir die alten Zeilen schneller löschen wollen
  2. Wenn wir die Sequenz nicht zum Generieren von PRIMARY KEY-Werten verwenden möchten
  3. Sowohl A als auch B
  4. Nichts des oben Genannten

Answer: C. Die Optionen CYCLE und NOCYCLE legen fest, ob Oracle 11g nach Erreichen des Minimal- oder Maximalwerts mit der Neuausgabe von Werten aus der Sequenz beginnen soll. Wenn die Option CYCLE angegeben ist und Oracle 11g den Maximalwert für eine aufsteigende Sequenz oder den Minimalwert für eine absteigende Sequenz erreicht, leitet die Option CYCLE den Zählzyklus erneut ein.

61.What is true about NEXTVAL pseudo column?

  1. It re-generates the CURRVAL of a sequence
  2. It returns the next available sequence value
  3. It can return duplicate values
  4. It generates the same values for different users

Answer: B. The pseudocolumn NEXTVAL (NEXT VALUE) is used to actually generate the sequence value. In other words, it calls the sequence object and requests the value of the next number in the sequence. After a value is generated, it's stored in the CURRVAL (CURRENT VALUE) pseudocolumn so that you can reference it again.

62.What is true about CURRVAL pseudo column?

  1. CURRVAL can be used before NEXTVAL with respect to a sequence
  2. CURRVAL gives the current value of a sequence
  3. CURRVAL can give duplicate values
  4. None of the above

Answer: B.

63.When can NEXTVAL and CURRVAL be used?

  1. SET clause of an INSERT statement
  2. VALUES clause of an UPDATE statement
  3. The SELECT list of a SELECT statement that is not part of a sub-query
  4. The SELECT list of an INSERT statement

Answer: C, D. The sequence can be used in SELECT query, PL/SQL cursor or in IAS (INSERT-AS-SELECT)direct operations.

64.When can NEXTVAL and CURRVAL not be used?

  1. The SELECT list of a view
  2. The SELECT statement with the DISTINCT keyword
  3. A sub-query in SELECT, DELETE or UPDATE statement
  4. All of the above

Answer: D.

Consider the given statement and answer the questions 65 and 66 that follow:

CREATE TABLE employees 
(employee_id  NUMBER(4) DEFAULT emp_empid_seq.CURRVAL,
 department_id NUMBER(4));

65.What will be the outcome of this statement? (Assume that emp_empid_seq is sequence used to generate employee ID values)

  1. Table will be created
  2. The department_id column will have the values from the sequence generated for the employee ID
  3. The department_id column will have a DEFAULT value
  4. ORA error

Answer: D. Pseudocolumns cannot be specified in DEFAULT clause of a column definition.

66.What will be the outcome of this statement if the CURRVAL is replaced with NEXTVAL? (Assume that emp_empid_seq is generated to generate employee ID values)

  1. Table will be created
  2. The department_id column will have the values from the sequence generated for the employee ID
  3. The department_id column will have a DEFAULT value
  4. ORA error

Answer: D. Pseudocolumns cannot be specified in DEFAULT clause of a column definition.

Examine the given exhibit giving the structures of the tables Departments and Location. Answer the questions 67 and 68 that follow:

SQL> DESC departments
 Name			 Null?	  Type
 ----------------------- -------- ----------------
 DEPARTMENT_ID		 NOT NULL NUMBER(4)
 DEPARTMENT_NAME	 NOT NULL VARCHAR2(30)
 MANAGER_ID			  NUMBER(6)
 LOCATION_ID			  NUMBER(4)
SQL> desc locations
 Name			 Null?	  Type
 ----------------------- -------- ----------------
 LOCATION_ID		 NOT NULL NUMBER(4)
 STREET_ADDRESS 		  VARCHAR2(40)
 POSTAL_CODE			  VARCHAR2(12)
 CITY			 NOT NULL VARCHAR2(30)
 STATE_PROVINCE 		  VARCHAR2(25)
 COUNTRY_ID			  CHAR(2)

67.You need to insert a new department named "HR" in the location ID 1000. Which of the following statements will give you the required results?

  1. INSERT INTO departments (dept_id, dept_name, location_id)
    VALUES (dept_deptid_seq.NEXTVAL, 'HR', 1000);
  2. INSERT INTO departments (dept_id, dept_name, location_id)
    VALUES (dept_deptid_seq.NEXTVAL, "HR", 1000);
  3. INSERT INTO departments (dept_id, dept_name, location_id)
    VALUES (dept_deptid_seq.CURRVAL, 'HR', 1000);
  4. None of the above

Answer: A.The option C will cause a 'Unique constraint violation' as it will try to insert current value of department id which aleady exists in the DEPARTMENTS table.

68.Suppose you execute the below query before inserting the values as shown in the option A in question 67. What will be the outcome of the query?

SELECT dept_deptid_seq.CURRVAL FROM DUAL;
  1. ORA error
  2. It will give the current value of the sequence
  3. Neither of A nor B
  4. None of the above

Answer: B. When a user logs in to Oracle 11g, no value is initially stored in the CURRVAL pseudocolumn; the current value is NULL. After a NEXTVAL call has been issued to generate a sequence value, CURRVAL stores that value until the next value is generated. CURRVAL contains only the last value generated.

69.How can gaps occur in the values of a sequence?

  1. When a rollback occurs
  2. The system crashes
  3. A sequence is used in another table
  4. All of the above

Answer: D.

70.What is true about caching sequence values?

  1. Caching sequence values is not possible in Oracle
  2. The cache is populated when the maximum limit of the sequence is reached
  3. Caching starts the first time when the sequence is referred
  4. None of the above

Answer: C. If the NOCACHE option is specified when the sequence is created, each number is generated when the request is received. However, if an organization's transactions require large amounts of sequential numbers throughout a session, the CACHE option can be used to have Oracle 11g generate a set of values ahead of time and store them in the server's memory. Then, when a user requests a sequence value, the next available value is assigned-without Oracle 11g having to generate the number. On the other hand, if the CACHE option isn't specified, Oracle 11g assumes a default option of CACHE 20 and stores 20 sequential values in memory automatically for users to access.

71.The following query for the sequence EMP_EMPID_SEQ is executed after a transaction which inserted five employee details.

Select emp_empID_seq.CURRVAL from dual;

Suppose the employee transaction rolled back. What will be the result of the above query?

  1. The sequence value at the starting of employee transaction
  2. NULL
  3. The sequence value at the end of employee transaction
  4. None of the above

Answer: C. Sequence values are unaffected by commit or rollback. If a transaction which uses sequence generator is rolled back, the sequence values are wasted and cannot be recovered.

72.Which of the following privileges are required to modify a sequence?

  1. CREATE OR REPLACE privilege
  2. ALTER privilege for the sequence
  3. ALTER TABLE privilege
  4. UPDATE privilege

Answer: B. To alter a sequence, the sequence must be in your own schema, or you must have the ALTER object privilege on the sequence, or you must have the ALTER ANY SEQUENCE system privilege.

73.What happens when a sequence is altered?

  1. The existing integers already generated by the sequence are altered as well
  2. Only the future integers are affected
  3. The sequence stops caching the future integers
  4. None of the above

Answer: B. By using the ALTER SEQUENCE command, any changes are applied only to values generated after the modifications are made.

74.Suppose you need to drop a sequence. Which of the following commands will help?

  1. ALTER SEQUENCE sequence_name START WITH NULL;
  2. DROP sequence_name;
  3. DROP SEQUENCE sequence_name;
  4. None of the above

Answer: C. The DROP command is used to drop a sequence

75.Which of the following privileges will allow you to drop a sequence? (Choose the most appropriate answer)

  1. ALTER SEQUENCE
  2. ALTER TABLE
  3. DROP SEQUENCE
  4. DROP ANY SEQUENCE

Answer: D. To drop a sequence, either the sequence must be in your own schema or you must have the DROP ANY SEQUENCE system privilege.

76.What is true about Indexes?

  1. Indexes are only manually created
  2. Indexes are only automatically created
  3. Both A and B
  4. None of the above

Answer: D. Indexes can be created manually as well as automatically following certain actions like creating a primary key or unqiue constraint.

77.Which of the following is used by an index to locate the data quickly?

  1. ROWNUM
  2. ROWID
  3. Sequence
  4. None of the above

Answer: B. An Oracle 11g index is a database object that stores a map of column values and the ROWIDs of matching table rows. A ROWID is the physical address of a table row.

78.What happens when there is no index on a column of a table?

  1. The data is located quickly
  2. There is a full table scan
  3. The table cannot be created
  4. The table cannot be altered

Answer: B.

79.What among the following is true about an Index?

  1. Index reduces the disk I/O
  2. Index locates data quickly
  3. Indexes are logically and physically independent of the table that they index
  4. All of the above

Answer: D.

80.What will happen if an index is dropped?

  1. The column on which the index is created, is dropped too
  2. The table on which the index is created, is dropped too
  3. Indexes once created cannot be dropped
  4. As Indexes are logically and physically independent objects, they can be dropped without affecting other objects

Answer: D. Indexes are the objects which are physically stored in schema. Dropping an index doesn't impacts other objects.

81.What happens when a table is dropped?

  1. The indexes still remain as they are logically and independent objects
  2. The indexes in the table are also dropped
  3. Neither of A nor B
  4. None of the above

Answer: B.

82.How are indexes created automatically?

  1. When we create a table
  2. When a table is altered
  3. When a PRIMARY KEY is defined on a column (or group of columns) of a table
  4. When a UNIQUE KEY constraint is defined in the table definition

Answer: C, D.

83.For which of the following objects, a synonym can be created?

  1. Tables and views only
  2. Table, view and sequence
  3. Stored procedure, function, or package
  4. Synonym

Answer: B, C, D. The schema object for which you are creating the synonym can be of the following types:Table or object table, View or object view, Sequence, Stored procedure, function, or package, Materialized view, Java class schema object, User-defined object type, Synonym

84. Which of the following can you use to reference a table owned by another user?

  1. INDEX
  2. TABLE
  3. SYNONYMS
  4. SEQUENCES

Answer: C. A synonym is an alternative name or alias for a database object.

85.What among of the following is an example of a Non-unique index?

  1. PRIMARY KEY
  2. UNIQUE KEY
  3. FOREIGN KEY
  4. None of the above

Answer: C.

86.Which of the following is the main and basic type of an Index?

  1. Bitmap
  2. B-tree
  3. Unique
  4. Non-unique

Answer: A, B. The B-tree (balanced-tree) index is the most common index used in Oracle. You can create this type of index with a basic CREATE INDEX statement. A bitmap index varies in structure and use from a B-tree index. This index is useful for improving queries on columns that have low selectivity (low cardinality, or a small number of distinct values).

87.You need to speed up a query by creating an index on the FIRST_NAME of the EMPLOYEES table. Which of the following statements can you use? (Assume the table structure as shown)

SQL> DESC employees
 Name			 Null?	  Type
 ----------------------- -------- ----------------
 EMPLOYEE_ID		 NOT NULL NUMBER(6)
 FIRST_NAME			  VARCHAR2(20)
 LAST_NAME		 NOT NULL VARCHAR2(25)
 EMAIL			 NOT NULL VARCHAR2(25)
 PHONE_NUMBER			  VARCHAR2(20)
 HIRE_DATE		 NOT NULL DATE
 JOB_ID 		 NOT NULL VARCHAR2(10)
 SALARY 			  NUMBER(8,2)
 COMMISSION_PCT 		  NUMBER(2,2)
 MANAGER_ID			  NUMBER(6)
 DEPARTMENT_ID			  NUMBER(4)
  1. CREATE INDEX emp_first_name_idx 
    ON employees (first_name);
  2. CREATE INDEX emp_first_name_idx 
    ON employees first_name;
  3. ALTER INDEX emp_first_name_idx 
    ON employees (first_name);
  4. None of the above

Answer: A.

88.What does the UNIQUE keyword do while creating indexes?

  1. It specifies that the value of the column(s) upon which the index is created must be unique
  2. You cannot use the UNIQUE keyword when creating indexes
  3. It specifies that the index that is created can be used only by one table
  4. None of the above

Answer: A. A unique index is typically created automatically when a PRIMARY KEY or UNIQUE constraint is defined on a column. Unique indexes can also be explicitly created by including the UNIQUE keyword in the CREATE INDEX statement.

89.What will happen when you specify the keyword BITMAP while creating an Index?

  1. It creates the index with a bitmap for each distinct key.
  2. It does not create the index on each row separately
  3. Both A and B
  4. None of the above

Answer: C.

90.You have queries written which are expected to retrieve less than 2% to 4% of rows. Which of the following can be applied on the relevant tables to achieve the query performance of such query? (Choose the best answer)

  1. Indexes
  2. UNION set operator
  3. MINUS set operator
  4. None of the above

Answer: A. Indexes are the best way to achieve query performance. Heavy IO operations can be reduced and simplified using index scans.

91.In what scenarios can Indexes be useful?

  1. If the table(s) is very large
  2. If a column has less values
  3. If a column contains a large number of NULL values
  4. If a column has a wide range of values

Answer: C, D.

92.The table EMPLOYEES is updated frequently. When can Indexes be created on this table? (Choose the most appropriate answer)

  1. Indexes should not be created if a table is updated frequently
  2. Indexes should be created at the time when the table is created
  3. Neither of A nor B
  4. None of the above

Answer: A. Frequent or bulk DML operations on a table with an index add an overhead of maintaining the index segment, which might affect the DML operation performance.

93.Consider the following query and answer the following query. Assume that the EMPLOYEE_ID , DEPARTMENT_ID and FIRST_NAME columns of EMPLOYEES table are indexed. (Assume the table structure as given)

SQL> DESC employees
 Name			 Null?	  Type
 ----------------------- -------- ----------------
 EMPLOYEE_ID		 NOT NULL NUMBER(6)
 FIRST_NAME			  VARCHAR2(20)
 LAST_NAME		 NOT NULL VARCHAR2(25)
 EMAIL			 NOT NULL VARCHAR2(25)
 PHONE_NUMBER			  VARCHAR2(20)
 HIRE_DATE		 NOT NULL DATE
 JOB_ID 		 NOT NULL VARCHAR2(10)
 SALARY 			  NUMBER(8,2)
 COMMISSION_PCT 		  NUMBER(2,2)
 MANAGER_ID			  NUMBER(6)
 DEPARTMENT_ID			  NUMBER(4)
SELECT first_name, last_name 
FROM employees 
WHERE comm IS NULL;

Will the existing indexes help in this case if there are 1 million rows in the table EMPLOYEES?

  1. Yes
  2. No
  3. It might help
  4. None of the above

Answer: B. Indexes are not used when the query predicates do not contain the columns on which the index is created.

94.Which of the following will remove an Index?

  1. DELETE FROM index_name;
  2. DROP INDEX index_name;
  3. DROP INDEX;
  4. None of the above

Answer: B. You must have the DROP ANY INDEX privilege to drop an index.