Oracle Interview Questions and Answers : SQL

 
1. To see current user name
    Sql> show user;

2. Change SQL prompt name
     SQL> set sqlprompt “Manimara > “
     Manimara >
     Manimara >

3. Switch to DOS prompt
     SQL> host

4. How do I eliminate the duplicate rows ?
     SQL> delete from table_name where rowid not in (select max(rowid)
     from  table group by  duplicate_values_field_name);
     or
     SQL> delete duplicate_values_field_name dv from table_name ta where
                rowid <(select min(rowid) from table_name tb where ta.dv=tb.dv);  

----->Get answers to all your Questions at--->WebDeveloper's Corner<-----

13. Display the number value in Words                          
         SQL> select sal, (to_char(to_date(sal,'j'), 'jsp')) from emp;

14. Display Odd/ Even number of records      
      Odd number of records:     
      select * from emp where (rowid,1) in (select rowid, mod(rownum,2) from emp);      
      1      
      3      
      5     
     Even number of records:     
    select * from emp where (rowid,0) in (select rowid, mod(rownum,2) from emp)      
      2      
      4     
      6

15. Which date function returns number value?        
     months_between

16. Any three PL/SQL Exceptions?       
     Too_many_rows, No_Data_Found, Value_Error, Zero_Error, Others

17. What are PL/SQL Cursor Exceptions?       
     Cursor_Already_Open, Invalid_Cursor

18. Other way to replace query result null value with a text       
       SQL> Set NULL ‘N/A’     to reset SQL> Set NULL ‘’

19. What are the more common pseudo-columns?
      SYSDATE, USER , UID, CURVAL, NEXTVAL, ROWID, ROWNUM

20. What is the output of SIGN function?
      1 for positive value, 0 for Zero, -1 for Negative value.

21. What is the maximum number of triggers, can apply to a single table?
       12 triggers.

21. How would you determine the time zone under which a database was operating?
       select DBTIMEZONE from dual;

22. Explain the use of setting GLOBAL_NAMES equal to TRUE.
       Setting GLOBAL_NAMES dictates how you might connect to a database. This
       variable is either TRUE or FALSE and if it is set to TRUE it enforces database
       links to have the same name as the remote database to which they are linking.

23. What command would you use to encrypt a PL/SQL application?
       WRAP

24. Explain the difference between a FUNCTION, PROCEDURE and PACKAGE.
       A function and procedure are the same in that they are intended to be a
      collection of PL/SQL code that carries a single task. While a procedure does
      not have to return any values to the calling application, a function will return
      a single value. A package on the other hand is a collection of functions and
      procedures that are grouped together based on their commonality to a
      business function or application.

25. Explain the use of table functions.
      Table functions are designed to return a set of rows through PL/SQL logic
      but are intended to be used as a normal table or view in a SQL statement.
      They are also used to pipeline information in an ETL process.

26. Name three advisory statistics you can collect.
       Buffer Cache Advice, Segment Level Statistics, & Timed Statistics

27. Where in the Oracle directory tree structure are audit traces placed?
       In unix $ORACLE_HOME/rdbms/audit, in Windows the event viewer

28. Explain materialized views and how they are used.
       Materialized views are objects that are reduced sets of information that
       have been summarized, grouped, or aggregated from base tables. They
       are typically used in data warehouse or decision support systems.

29. When a user process fails, what background process cleans up after it?
       PMON

30. What background process refreshes materialized views?
       The Job Queue Processes.

31. How would you determine what sessions are connected and what resources they
      are waiting for?
      Use of V$SESSION and V$SESSION_WAIT

32. Describe what redo logs are.
       Redo logs are logical and physical structures that are designed to hold all
       the changes made to a database and are intended to aid in the recovery
       of a database.

33. How would you force a log switch?
       ALTER SYSTEM SWITCH LOGFILE;

34. Give two methods you could use to determine what DDL changes have been made.
      You could use Logminer or Streams

35. What does coalescing a tablespace do?
      Coalescing is only valid for dictionary-managed tablespaces and
      de-fragments space  by combining neighboring free extents into large
      single extents.

36. What is the difference between a TEMPORARY tablespace and a PERMANENT
      tablespace?
      A temporary tablespace is used for temporary objects such as sort
     structures while permanent tablespaces are used to store those
     objects meant to be used as the true  objects of the database.

37. Name a tablespace automatically created when you create a database.
       The SYSTEM tablespace.

38. When creating a user, what permissions must you grant to allow them
       to connect to the database?
      Grant the CONNECT to the user.

39. How do you add a data file to a tablespace?
        ALTER TABLESPACE ADD
           DATAFILE SIZE

40. How do you resize a data file?
       ALTER DATABASE DATAFILE RESIZE ;

41. What view would you use to look at the size of a data file?
       DBA_DATA_FILES

42. What view would you use to determine free space in a tablespace?
       DBA_FREE_SPACE

43. How would you determine who has added a row to a table?
       Turn on fine grain auditing for the table.

44. How can you rebuild an index?
       ALTER INDEX REBUILD;

45. Explain what partitioning is and what its benefit is.
      Partitioning is a method of taking large tables and indexes and splitting them into
      smaller, more manageable pieces.

46. You have just compiled a PL/SQL package but got errors, how would you view
       the errors?
       SHOW ERRORS

47. How can you gather statistics on a table?
       The ANALYZE command.

48. How can you enable a trace for a session?
       Use the DBMS_SESSION.SET_SQL_TRACE or
       Use ALTER SESSION SET SQL_TRACE = TRUE;

49. What is the difference between the SQL*Loader and IMPORT utilities?
       These two Oracle utilities are used for loading data into the database.
       The difference  is that the import utility relies on the data being
       produced by another Oracle utility EXPORT while the SQL*Loader
       utility allows data to be loaded that has been produced  by other
       utilities from different data sources just so long as it conforms to ASCII
       formatted or delimited files.

50. Name two files used for network connection to a database.
      TNSNAMES.ORA and SQLNET.ORA
      

2 comments:

  1. Hey that was very useful questions to us.

    ReplyDelete
  2. Thanks... come back again...

    ReplyDelete