SQL PLSQL Questions
SQL PLSQL Questions
BEGIN
cur := DBMS_SQL.OPEN_CURSOR;
DBMS_SQL.PARSE(cur,'CREATE TABLE X (Y DATE)',
DBMS_SQL.NATIVE);
rc := DBMS_SQL.EXECUTE(cur);
DBMS_SQL.CLOSE_CURSOR(cur);
END;
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------What are the various types of Exceptions ?
Answer: User defined and Predefined Exceptions.
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Can we define exceptions twice in same block ?
Answer: No.
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------What is the difference between a procedure and a function ?
Answer: Functions return a single variable by value whereas procedures do not return any
variable by value.Rather they return multiple variables by passing variables by reference through
their OUT parameter.
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Can you have two functions with the same name in a PL/SQL block ?
Answer: Yes.
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Can you have two stored functions with the same name ?
Answer: Yes.
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Can you call a stored function in the constraint of a table ?
Answer: No.
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------What are the various types of parameter modes in a procedure ?
Answer: No.
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Can null keys be entered in cluster index, normal index ?
Answer: Yes.
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Can Check constraint be used for self referential integrity ? How ?
Answer: Yes.In the CHECK condition for a column of a table, we can reference some other
column of the same table and thus enforce self referential integrity.
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------What are the min.extents allocated to a rollback extent ?
Answer: Two
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------What are the states of a rollback segment ? What is the difference between partly available and
needs recovery ?
Answer: The various states of a rollback segment are :
ONLINE
OFFLINE
PARTLY AVAILABLE
NEEDS RECOVERY
INVALID.
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------What is the difference between unique key and primary key ?
Answer: Unique key can be null; Primary key cannot be null.
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------An insert statement followed by a create table statement followed by rollback ? Will the rows be
inserted ?
Answer: No.
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Can you define multiple savepoints ?
Answer: Yes.
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Can you Rollback to any savepoint ?
Answer: Yes.
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------What is the maximum no.of columns a table can have ?
Answer: 254.
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------What is the significance of the & and && operators in PL SQL ?
Answer: The & operator means that the PL SQL block requires user input for a variable.The &&
operator means that the value of this variable should be the same as inputted by the user
previously for this same variable
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Can you pass a parameter to a cursor ?
Answer: Explicit cursors can take parameters, as the example below shows.A cursor parameter
can appear in a query wherever a constant can appear.
CURSOR c1 (median IN NUMBER) IS
SELECT job, ename FROM emp WHERE sal > median;
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------What are the various types of RollBack Segments ?
Answer: The types of Rollback sagments are as follows :
Public Available to all instances
Private Available to specific instance
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Can you use %RowCount as a parameter to a cursor ?
Answer: Yes
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Is the query below allowed :
Select sal, ename Into x From emp Where ename = 'KING' (Where x is a record of Number(4)
and Char(15))
Answer: Yes
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Is the assignment given below allowed :
ABC = PQR (Where ABC and PQR are records)
Answer: Yes
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Is this for loop allowed : For x in &Start..&End Loop
Answer: Yes
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------How many rows will the following SQL return : Select * from emp Where rownum < 10;
Answer: 9 rows
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------How many rows will the following SQL return : Select * from emp Where rownum = 10;
Answer: No rows
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Which symbol preceeds the path to the table in the remote database ?
Answer: @
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Are views automatically updated when base tables are updated ?
Answer: Yes
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Can a trigger written for a view ?
Answer: No
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------If all the values from a cursor have been fetched and another fetch is issued, the output will be :
error, last record or first record ?
Answer:
ORACLE 7
ORACLE 6
Cost based optimizer
Rule based optimizer
Shared SQL Area
SQL area allocated for each user
Multi Threaded Server
Single Threaded Server
Hash Clusters
Only B-Tree indexing
Roll back Size
Adjustment No provision
Truncate command
No provision
Distributed Database
Distributed Query
Table replication & snapshots
No provision
Client/Server Tech
No provision
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------What is Functional Dependency?
Answer: Given a relation R, attribute Y of R is functionally dependent on attribute X of R if and
only if each X-value has associated with it precisely one -Y value in R
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------What is Auditing ?
Answer: The database has the ability to audit all actions that take place within it. a) Login
attempts, b) Object Accesss, c) Database Action Result of Greatest(1,NULL) or Least(1,NULL)
NULL
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------While designing in client/server what are the 2 imp.things to be considered ?
Answer: Network Overhead (traffic), Speed and Load of client server
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------What are the disadvantages of SQL ?
Answer: Disadvantages of SQL are :
Cannot drop a field
Cannot rename a field
Cannot manage memory
Procedural Language option not provided
Index on view or index on index not provided
View updation problem
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------When to create indexes ?
Answer: To be created when table is queried for less than 2% or 4% to 25% of the table rows.
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------How can you avoid indexes ?
Answer: To make index access path unavailable Use FULL hint to optimizer for full table scan
Use INDEX or AND-EQUAL hint to optimizer to use one index or set to indexes instead of
another. Use an expression in the Where Clause of the SQL.
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------What is the result of the following SQL : Select 1 from dual UNION Select 'A' from dual;
Answer: Error
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Can database trigger written on synonym of a table and if it can be then what would be the effect
if original table is accessed.
Answer: Yes, database trigger would fire.
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Can you alter synonym of view or view ?
Answer: No
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Can you create index on view
Answer: No.
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------What is the difference between a view and a synonym ?
Answer: Synonym is just a second name of table used for multiple link of database.View can be
created with many tables, and with virtual columns and with conditions.But synonym can be on
view.
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------What's the length of SQL integer ?
Answer: 32 bit length
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------What is the difference between foreign key and reference key ?
Answer: Foreign key is the key i.e.attribute which refers to another table primary key. Reference
key is the primary key of table referred by another table.
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Can dual table be deleted, dropped or altered or updated or inserted ?
Answer: Yes
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------If content of dual is updated to some value computation takes place or not ?
Answer: Yes
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------If any other table same as dual is created would it act similar to dual?
Answer: Yes
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------For which relational operators in where clause, index is not used ?
Answer: <> , like '%...' is NOT functions, field +constant, field||''
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Assume that there are multiple databases running on one machine.How can you switch from one
to another ?
Answer: Changing the ORACLE_SID
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------What are the advantages of Oracle ?
Answer: Portability : Oracle is ported to more platforms than any of its competitors, running on
more than 100 hardware platforms and 20 networking protocols. Market Presence : Oracle is by
far the largest RDBMS vendor and spends more on R & D than most of its competitors earn in
total revenue.This market clout means that you are unlikely to be left in the lurch by Oracle and
there are always lots of third party interfaces available. Backup and Recovery : Oracle provides
industrial strength support for on-line backup and recovery and good software fault tolerence to
disk failure.You can also do point-in-time recovery. Performance : Speed of a 'tuned' Oracle
Database and application is quite good, even with large databases.Oracle can manage > 100GB
databases. Multiple database support : Oracle has a superior ability to manage multiple databases
within the same transaction using a two-phase commit protocol.
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Can one use dynamic SQL within PL/SQL? OR Can you use a DDL in a procedure ? How ?
Answer: From PL/SQL V2.1 one can use the DBMS_SQL package to execute dynamic SQL
statements.
Eg: CREATE OR REPLACE PROCEDURE DYNSQL AS
cur integer;
rc integer;
BEGIN
cur := DBMS_SQL.OPEN_CURSOR;
DBMS_SQL.PARSE(cur,'CREATE TABLE X (Y DATE)',
DBMS_SQL.NATIVE);
rc := DBMS_SQL.EXECUTE(cur);
DBMS_SQL.CLOSE_CURSOR(cur);
END;
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------What are the various types of Exceptions ?
Answer: User defined and Predefined Exceptions.
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Can we define exceptions twice in same block ?
Answer: No.
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------What is the difference between a procedure and a function ?
Answer: Functions return a single variable by value whereas procedures do not return any
variable by value.Rather they return multiple variables by passing variables by reference through
their OUT parameter.
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Can you have two functions with the same name in a PL/SQL block ?
Answer: Yes.
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Can you have two stored functions with the same name ?
Answer: Yes.
inserted ?
Answer: No.
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Can you define multiple savepoints ?
Answer: Yes.
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Can you Rollback to any savepoint ?
Answer: Yes.
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------What is the maximum no.of columns a table can have ?
Answer: 254.
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------What is the significance of the & and && operators in PL SQL ?
Answer: The & operator means that the PL SQL block requires user input for a variable.The &&
operator means that the value of this variable should be the same as inputted by the user
previously for this same variable
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Can you pass a parameter to a cursor ?
Answer: Explicit cursors can take parameters, as the example below shows.A cursor parameter
can appear in a query wherever a constant can appear.
CURSOR c1 (median IN NUMBER) IS
SELECT job, ename FROM emp WHERE sal > median;
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------What are the various types of RollBack Segments ?
Answer: The types of Rollback sagments are as follows :
Public Available to all instances
Private Available to specific instance
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------If all the values from a cursor have been fetched and another fetch is issued, the output will be :
error, last record or first record ?
Answer: Last Record
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------A table has the following data : [[5, Null, 10]].What will the average function return ?
Answer: 7.5
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Is Sysdate a system variable or a system function?
Answer: System Function
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Consider a sequence whose currval is 1 and gets incremented by 1 by using the nextval reference
we get the next number 2.Suppose at this point we issue an rollback and again issue a
nextval.What will the output be ?
Answer: 3
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Definition of relational DataBase by Dr.Codd (IBM)?
Answer: A Relational Database is a database where all data visible to the user is organized
strictly as tables of data values and where all database operations work on these tables.
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------What is Multi Threaded Server (MTA) ?
Answer: In a Single Threaded Architecture (or a dedicated server configuration) the database
manager creates a separate process for each database user.But in MTA the database manager can
assign multiple users (multiple user processes) to a single dispatcher (server process), a
controlling process that queues request for work thus reducing the databases memory
requirement and resources.
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Which are initial RDBMS, Hierarchical & N/w database ?
Answer:
RDBMS - R system
Hierarchical - IMS
N/W - DBTG