Skip to main content

Question 13: DDL and Commit

I have updated some tables and before commit if I will give one DDL command means what will happen?

For example
CREATE TABLE test(fldname number(10));
insert into test (fldname) values (10);
insert into test (fldname) values (20);

After that without giving Commit statement, I issued one DDL command
CREATE TABLE test1( sno number(10))
What aobut the previous inserts? Is it committed or not? explain.

Answer:
I checked this and found the following 3 points.

Point No. 1:
If we give a DDL command with syntax error means it will not commit and gives the error. For example the following statement

CREATE TABLE test(fldname number(10), );

note that the comma, gives "invalid identifier.. " error and without committing the INSERT statements.


Point No. 2:
If the given DDL command executes without any error means it will auto commit the INSERT statements.


Point No. 3:

If we give a DDL command without any syntax error and that statement not execute also auto commit the INSERT statements and gives the exception of thee DDL statement. For example the following statement

CREATE TABLE test(fldname number(10) );

gives "name is already used by an existing object" exception after auto commiting the insert statements.

Comments

Popular posts from this blog

Question 8: Aggregate Functions

Examine the description of the STUDENTS table: STD_ID NUMBER(4) COURSE_ID VARCHARD2(10) START_DATE DATE END_DATE DATE Which two aggregate functions are valid on the START_DATE column? (Choose two) A. SUM(start_date) B. AVG(start_date) C. COUNT(start_date) D. AVG(start_date, end_date) E. MIN(start_date) F. MAXIMUM(start_date) Answer: C & E Explanation: It is possible to apply COUNT() and MIN() functions on the column with DATE data type. Incorrect Answers A: Function SUM() cannot be used with DATE data type column. B: Function AVG() cannot be used with DATE data type column. D: Function AVG() cannot be used with DATE data type column, and function AVG() just has one parameter X, not two. It averages all X column values returned by the SELECT statement. F: There is no MAXIMUM() function in Oracle, only MAX() function exists.

20. TRIM Function

Which SELECT statement will the result 'elloworld' from the string 'HelloWorld'? A. SELECT SUBSTR( 'HelloWorld',1) FROM dual; B. SELECT INITCAP(TRIM ('HelloWorld', 1,1)) FROM dual; C. SELECT LOWER(SUBSTR('HellowWorld', 1, 1) FROM dual; D. SELECT LOWER(SUBSTR('HelloWorld', 2, 1) FROM dual; E. SELECT LOWER(TRIM ('H' FROM 'HelloWorld')) FROM dual; Answer: E Explanation: TRIM function accept a string describing the data you would like to trim from a column value. It can trim from both side of column value i.e. left and right. In the following statement this functionwill trim as SELECT LOWER(TRIM ('+' FROM 'HelloWorld')) FROM dual; From the above statement trim function will remove the character 'H' from 'HelloWorld' and LOWER function will convert the remaining character to lower case.