<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Kwatog &#38; Co &#187; Oracle</title>
	<atom:link href="http://kwatog.com/category/blog/oracle/feed/" rel="self" type="application/rss+xml" />
	<link>http://kwatog.com</link>
	<description>tech notes and general nonsense</description>
	<lastBuildDate>Fri, 04 May 2012 07:34:43 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>Hide sqlldr Oracle Password in PS Command</title>
		<link>http://kwatog.com/blog/oracle/hide-sqlldr-oracle-password-in-unix/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=hide-sqlldr-oracle-password-in-unix</link>
		<comments>http://kwatog.com/blog/oracle/hide-sqlldr-oracle-password-in-unix/#comments</comments>
		<pubDate>Fri, 10 Feb 2012 03:34:45 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Oracle]]></category>
		<category><![CDATA[PL/SQL]]></category>
		<category><![CDATA[Unix]]></category>
		<category><![CDATA[ps]]></category>
		<category><![CDATA[security]]></category>
		<category><![CDATA[shell]]></category>
		<category><![CDATA[sqlldr]]></category>
		<category><![CDATA[unix]]></category>
		<category><![CDATA[vulnerability]]></category>

		<guid isPermaLink="false">http://kwatog.com/?p=734</guid>
		<description><![CDATA[Our internal audit team has raised an issue on some scripts exposing database user, password and tns. You see, all you need is an access to unix shell and run ps command and you&#8217;ll be able to get the user id and password of the database. On the otherhand, there&#8217;s not a lot of people&#8230;]]></description>
			<content:encoded><![CDATA[<p>Our internal audit team has raised an issue on some scripts exposing database user, password and tns. You see, all you need is an access to unix shell and run ps command and you&#8217;ll be able to get the user id and password of the database. On the otherhand, there&#8217;s not a lot of people who have access to the unix shell. But regardless, it&#8217;s still a security vulnerability and must be rectified. Here&#8217;s how.<br />
<span id="more-734"></span><br />
Basically, the steps are as follows.</p>
<ol>
<li>Write the connection string to a temp file. This would be your parameter file. The format is as below.<br />
   <code>userid=scott/tiger@</code><br />
  As it is a parameter file, you can actually put all the other sqlldr parameters in there.
</li>
<li>Call sqlldr with parfile parameter.<br />
Example : <code>sqlldr parfile=paramfile.txt data=mydata.csv control=mytable.ctl log=mydata101.log</code>
</li>
<li>Delete the temp file</li>
</ol>
<p>To be more clear, here&#8217;s the actual code I used.<br />
<code><br />
  umask 0077<br />
  PWDFILE=$(mktemp)<br />
  echo "userid=${SYS_JOB_BSS_ORACLE_UID}/${PASWD}@${SYS_JOB_BSS_ORACLE_SID}" > $PWDFILE<br />
  sqlldr  parfile=$PWDFILE  data=${data_file} control=${APP_CTL_FILE_NAME} log=${data_file}.log rows=100 errors=100<br />
  retCode=`echo $?`<br />
  rm $PWDFILE<br />
 </code> </p>
<p> I would like to explain it a bit but I realized that you won&#8217;t be here if you don&#8217;t understand what it does. If anything, the umask there just sets the permission of the temp file to be created as 077. The rest are pretty much self explanatory.</p>
<p>http://laurentschneider.com/wordpress/2009/05/hide-password-from-ps-output-sql-loader.html</p>
]]></content:encoded>
			<wfw:commentRss>http://kwatog.com/blog/oracle/hide-sqlldr-oracle-password-in-unix/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>UTF_FILE and Directories</title>
		<link>http://kwatog.com/blog/oracle/utf_file-and-directories/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=utf_file-and-directories</link>
		<comments>http://kwatog.com/blog/oracle/utf_file-and-directories/#comments</comments>
		<pubDate>Thu, 10 Nov 2011 00:38:33 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Oracle]]></category>
		<category><![CDATA[PL/SQL]]></category>
		<category><![CDATA[all_directories]]></category>
		<category><![CDATA[directories]]></category>
		<category><![CDATA[folders]]></category>
		<category><![CDATA[utf_file]]></category>

		<guid isPermaLink="false">http://kwatog.com/?p=43</guid>
		<description><![CDATA[In case you are maintaining a pl/sql program developed by someone else and that program writes into a file, then basically that file is written to a folder/directory. And since the directories are saved in codes, you have to find the meaning (or location) of those codes. The code below will help you display the&#8230;]]></description>
			<content:encoded><![CDATA[<p>In case you are maintaining a pl/sql program developed by someone else and that program writes into a file, then basically that file is written to a folder/directory. And since the directories are saved in codes, you have to find the meaning (or location) of those codes. The code below will help you display the information required.</p>
<p><code>SELECT * FROM ALL_DIRECTORIES;</code></p>
<p>The query above will display all the directories accessible to the current user. They are folders in the server where you can write your output files. For some reason, I forgot about this twice already and had to scour the web to find it. The problem is, I also forgot the keywords. So, I&#8217;m writing it now.</p>
<p>To register new directories, you can follow the example below.</p>
<p>Example<br />
<code>create or replace directory mydir as 'c:mydirectory';</code></p>
<p>To use, run the code below.</p>
<p><code>declare<br />
f utl_file.file_type;<br />
begin<br />
f := utl_file.fopen('MYDIR', 'myfilename.txt', 'w');<br />
utl_file.put_line(f, 'just another line text 1');<br />
utl_file.put_line(f, 'just another line text 2');<br />
utl_file.fclose(f);<br />
end;</code></p>
]]></content:encoded>
			<wfw:commentRss>http://kwatog.com/blog/oracle/utf_file-and-directories/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Oracle Power Function</title>
		<link>http://kwatog.com/blog/oracle-power-function/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=oracle-power-function</link>
		<comments>http://kwatog.com/blog/oracle-power-function/#comments</comments>
		<pubDate>Tue, 08 Nov 2011 03:30:14 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Oracle]]></category>
		<category><![CDATA[PL/SQL]]></category>
		<category><![CDATA[Oracle SQL]]></category>
		<category><![CDATA[power function]]></category>

		<guid isPermaLink="false">http://kwatog.com/?p=681</guid>
		<description><![CDATA[There are some pl/sql functions that you rarely use and we always forget the syntax.And here&#8217;s another example &#8212; the power function. You know, that&#8217;s the n to the power of x (n^x). Again, I feel a bit ashamed for forgetting this one. Here&#8217;s the syntax. power(m,n); whereby m is the base. n is the&#8230;]]></description>
			<content:encoded><![CDATA[<p>There are some pl/sql functions that you rarely use and we always forget the syntax.And here&#8217;s another example &#8212; the power function.  You know, that&#8217;s the n to the power of x (n^x). Again, I feel a bit ashamed for forgetting this one. Here&#8217;s the syntax.<br />
<span id="more-681"></span><br />
<code><br />
power(m,n);<br />
</code></p>
<p>whereby<br />
m is the base.<br />
n is the exponent.</p>
<p>Example<br />
<code><br />
power(36,5);<br />
</code><br />
will return 1679616</p>
<p>Take note that this function returns NUMBER as the data type. That means the maximum value can only be 1.0 x 10^126. Later versions (10g onwards) can use binary_double as the base which makes the function output binary_double. I don&#8217;t know where you would need that large number, though. Also, if m is negative, then n must be an integer.</p>
<p>In case you are asking where I need it, there&#8217;s this code conversion whereby I needed to use the power function to get the value of a particular character. The exponent(n) is not fixed so I needed this function. To be specific, the function involves the pl/sql version of RowIdToRowIdNum of Siebel. I&#8217;ll post the code later.</p>
<p>References:</p>
<p>http://asktom.oracle.com/pls/asktom/f?p=100:11:0::::P11_QUESTION_ID:1594387900346571874</p>
]]></content:encoded>
			<wfw:commentRss>http://kwatog.com/blog/oracle-power-function/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Rowcount on Oracle Dynamic SQLs</title>
		<link>http://kwatog.com/blog/rowcount-on-oracle-dynamic-sqls/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=rowcount-on-oracle-dynamic-sqls</link>
		<comments>http://kwatog.com/blog/rowcount-on-oracle-dynamic-sqls/#comments</comments>
		<pubDate>Thu, 25 Aug 2011 10:44:17 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Oracle]]></category>
		<category><![CDATA[PL/SQL]]></category>

		<guid isPermaLink="false">http://kwatog.com/?p=668</guid>
		<description><![CDATA[A good friend asked me on how to capture the number of affected records on his delete statement. The answer would be as simple as below: DELETE FROM my_table WHERE mycolumn = 'mysearch'; v_rec_count := SQL%ROWCOUNT; On this case, SQL%ROWCOUNT will return the number of affected records in the immediate preceding statement. It is the&#8230;]]></description>
			<content:encoded><![CDATA[<p>A good friend asked me on how to capture the number of affected records on his delete statement. The answer would be as </p>
<p>simple as below:<br />
<code><br />
   DELETE FROM my_table<br />
   WHERE mycolumn = 'mysearch';</p>
<p>   v_rec_count := SQL%ROWCOUNT;<br />
</code></p>
<p>On this case, SQL%ROWCOUNT will return the number of affected records in the immediate preceding statement. It is the </p>
<p>equivalent command for @@rowcount in Sybase/SQL Server. </p>
<p>However in my friend&#8217;s case, the DELETE statement is part of the dynamic SQL. Obviously, we cannot use the approach </p>
<p>above as it is. Here&#8217;s how to capture the affected records in dynamic SQLs.</p>
<p><code><br />
vSQL := 'DELETE FROM ' ||  v_SchemaName || '.' ||  v_TableName || ' WHERE ' ||  v_Conditions || ‘;’;<br />
EXECUTE IMMEDIATE ‘BEGIN ’ ||  vSQL || ‘ :z := sql%rowcount; END; ’ USING OUT nRecCount  ;<br />
</code></p>
<p>Basically, we have to capture the rowcount from within the dynamic sql. That means you have to pass the variable via &#8220;OUT&#8221; parameter to flow the value out of the execute immediate. You can&#8217;t just fire nRecCount := sql%rowcount after the execute immediate because with that, the last command that ran is the execute immediate. It will return 1 instead of the actual value from the dynamic sql.</p>
<p>Source :</p>
<p>https://asktom.oracle.com/pls/asktom/f?p=100:11:0::NO::P11_QUESTION_ID:497908700346519628</p>
]]></content:encoded>
			<wfw:commentRss>http://kwatog.com/blog/rowcount-on-oracle-dynamic-sqls/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Update Oracle Sequence Last Number</title>
		<link>http://kwatog.com/blog/update-oracle-sequence-last-number/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=update-oracle-sequence-last-number</link>
		<comments>http://kwatog.com/blog/update-oracle-sequence-last-number/#comments</comments>
		<pubDate>Wed, 01 Jun 2011 07:47:39 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Oracle]]></category>
		<category><![CDATA[PL/SQL]]></category>

		<guid isPermaLink="false">http://kwatog.com/?p=552</guid>
		<description><![CDATA[I only realized this last week that direct update of the last number of the sequence. Or maybe I just don&#8217;t know so what I did was to create a workaround. ALTER SEQUENCE MY_SEQUENCE_NAME_SQ INCREMENT BY 300; SELECT MY_SEQUENCE_NAME_SQ.NEXTVAL FROM DUAL; ALTER SEQUENCE MY_SEQUENCE_NAME INCREMENT BY 1; Explanation The first SQL modifies increment number to&#8230;]]></description>
			<content:encoded><![CDATA[<p>I only realized this last week that direct update of the last number of the sequence. Or maybe I just don&#8217;t know so what I did was to create a workaround.<br />
<span id="more-552"></span><br />
<code><br />
ALTER SEQUENCE MY_SEQUENCE_NAME_SQ<br />
INCREMENT BY 300;</p>
<p>SELECT MY_SEQUENCE_NAME_SQ.NEXTVAL FROM DUAL;</p>
<p>ALTER SEQUENCE MY_SEQUENCE_NAME<br />
INCREMENT BY 1;<br />
</code></p>
<h3>Explanation</h3>
<p>The first SQL modifies increment number to 300. That means the next time I call the NEXTVAL, I&#8217;ll get the current number + 300. In that way, I can skip some numbers. And after achieving the purpose, I set back the increment to just 1.</p>
<p>This is a crudge workaround, actually. I needed to come up with a solution to a problem in production wherein the sequence number is no longer in-synch with the actual current max number in the table (due to manual insert/update). </p>
]]></content:encoded>
			<wfw:commentRss>http://kwatog.com/blog/update-oracle-sequence-last-number/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Input truncated to 1 characters</title>
		<link>http://kwatog.com/blog/input-truncated-to-1-characters/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=input-truncated-to-1-characters</link>
		<comments>http://kwatog.com/blog/input-truncated-to-1-characters/#comments</comments>
		<pubDate>Tue, 12 Apr 2011 09:01:54 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Oracle]]></category>
		<category><![CDATA[PL/SQL]]></category>

		<guid isPermaLink="false">http://kwatog.com/?p=526</guid>
		<description><![CDATA[That pesky though harmless message &#8220;Input truncated to 1 characters&#8221; keep on appearing on one of my scripts and I can&#8217;t figure out what&#8217;s the problem. It turned out that the last line of my script is the slash (/). An extra new line is needed after the slash so that this message is suppressed.&#8230;]]></description>
			<content:encoded><![CDATA[<p>That pesky though harmless message &#8220;Input truncated to 1 characters&#8221; keep on appearing on one of my scripts and I can&#8217;t figure out what&#8217;s the problem. It turned out that the last line of my script is the slash (/). <strong>An extra new line is needed after the slash so that this message is suppressed.</strong></p>
<p>To be clear, here&#8217;s the screenshot.<br />
<a href="http://kwatog.com/wp-content/uploads/2011/04/extra_line_input_truncated11.jpg"><img src="http://kwatog.com/wp-content/uploads/2011/04/extra_line_input_truncated11.jpg" alt="" title="extra_line_input_truncated" width="352" height="107" class="alignnone size-full wp-image-528" /></a><br />
<span id="more-526"></span><br />
Source : http://forums.oracle.com/forums/thread.jspa?messageID=3594805</p>
]]></content:encoded>
			<wfw:commentRss>http://kwatog.com/blog/input-truncated-to-1-characters/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Oracle MERGE command</title>
		<link>http://kwatog.com/blog/oracle-merge-command/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=oracle-merge-command</link>
		<comments>http://kwatog.com/blog/oracle-merge-command/#comments</comments>
		<pubDate>Thu, 03 Mar 2011 02:57:30 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Oracle]]></category>
		<category><![CDATA[PL/SQL]]></category>
		<category><![CDATA[DML]]></category>
		<category><![CDATA[insert]]></category>
		<category><![CDATA[merge]]></category>
		<category><![CDATA[statement]]></category>
		<category><![CDATA[update]]></category>
		<category><![CDATA[upsert]]></category>

		<guid isPermaLink="false">http://kwatog.com/?p=468</guid>
		<description><![CDATA[Oracle MERGE command was added in 9i but I only learned about it lately. This command is sometimes referred to as UPSERT because in one statement, you can both update and insert records into a target. Based on the matching condition, MERGE can update existing records if a match is found or insert new record&#8230;]]></description>
			<content:encoded><![CDATA[<p>Oracle MERGE command was added in 9i but I only learned about it lately. This command is sometimes referred to as UPSERT because in one statement, you can both update and insert records into a target. Based on the matching condition, MERGE can update existing records if a match is found or insert new record if not. Prior to 9i, we need separate sql statements or a PL/SQL program to do this.</p>
<p><span id="more-468"></span><br />
<code><br />
MERGE INTO tstg_idl_approach a<br />
USING tmdb_idl_approach b<br />
ON (a.approach_id = b.approach_id)<br />
WHEN MATCHED THEN<br />
   UPDATE SET   a.approach_code = b.approach_code ,<br />
                a.current_ind   = b.current_ind<br />
WHEN NOT MATCHED THEN<br />
	INSERT (approach_id  ,<br />
		    approach_code,<br />
            current_ind  )<br />
	VALUES (b.approach_id  ,<br />
            b.approach_code,<br />
            b.current_ind   );<br />
</code><br />
For further reading, I recommend visiting <a href="http://www.oracle-developer.net/display.php?id=203">http://www.oracle-developer.net/display.php?id=203</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://kwatog.com/blog/oracle-merge-command/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Oracle PL/SQL Continue Statement in Loops</title>
		<link>http://kwatog.com/blog/oracle-plsql-continue-statement-in-loops/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=oracle-plsql-continue-statement-in-loops</link>
		<comments>http://kwatog.com/blog/oracle-plsql-continue-statement-in-loops/#comments</comments>
		<pubDate>Fri, 11 Feb 2011 02:14:02 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Oracle]]></category>
		<category><![CDATA[PL/SQL]]></category>

		<guid isPermaLink="false">http://kwatog.com/?p=498</guid>
		<description><![CDATA[The CONTINUE statement is very handy feature when programming with loops in Oracle PL/SQL. Basically, it lets you skip to the next iteration of your loop (i.e., next record in the cursor loop). Unfortunately, it was only added in 11g Release 1 (11.1). This is stated in the Language Reference of that version. Below is&#8230;]]></description>
			<content:encoded><![CDATA[<p>The CONTINUE statement is very handy feature when programming with loops in Oracle PL/SQL. Basically, it lets you skip to the next iteration of your loop (i.e., next record in the cursor loop). Unfortunately, it was only added in 11g Release 1 (11.1). This is stated in the <a href="http://download.oracle.com/docs/cd/B28359_01/appdev.111/b28370/whatsnew.htm#CHDDIIJA">Language Reference</a> of that version.</p>
<p>Below is the example.</p>
<blockquote><p>
SQL> DECLARE<br />
  2    x NUMBER := 0;<br />
  3  BEGIN<br />
  4    LOOP &#8212; After CONTINUE statement, control resumes here<br />
  5      DBMS_OUTPUT.PUT_LINE (&#8216;Inside loop:  x = &#8216; || TO_CHAR(x));<br />
  6      x := x + 1;<br />
  7<br />
  8      IF x < 3 THEN<br />
  9        CONTINUE;<br />
 10      END IF;<br />
 11<br />
 12      DBMS_OUTPUT.PUT_LINE<br />
 13        ('Inside loop, after CONTINUE:  x = ' || TO_CHAR(x));<br />
 14<br />
 15      EXIT WHEN x = 5;<br />
 16    END LOOP;<br />
 17<br />
 18    DBMS_OUTPUT.PUT_LINE (' After loop:  x = ' || TO_CHAR(x));<br />
 19  END;<br />
 20  /
</p></blockquote>
<p><span id="more-498"></span><br />
As our Siebel CRM here in the office still uses 10g, I have no choice but to use some other ways(i.e., logic change, big if-endif, etc.) There&#8217;s a lot of critics of this function with some saying it&#8217;s like using GOTO statement in BASIC. I find it handy, though. And I don&#8217;t think those critics ever encountered such kind of situations or have programmed a large pl/sql program in the real world. </p>
<p>The statement allows me to make my codes more readable and easily understandable. On top of that, it allows shorter program and easily traceable code. And so I&#8217;m happy that Oracle has added it their RDBMS starting from 11g.</p>
]]></content:encoded>
			<wfw:commentRss>http://kwatog.com/blog/oracle-plsql-continue-statement-in-loops/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Run SQL Script via SQL*Plus via Prompt</title>
		<link>http://kwatog.com/blog/run-sql-script-via-sqlplus-via-prompt/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=run-sql-script-via-sqlplus-via-prompt</link>
		<comments>http://kwatog.com/blog/run-sql-script-via-sqlplus-via-prompt/#comments</comments>
		<pubDate>Thu, 10 Feb 2011 03:31:22 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Oracle]]></category>

		<guid isPermaLink="false">http://kwatog.com/?p=495</guid>
		<description><![CDATA[If you want to run an SQL script via sqlplus in the shell prompt, the command is as below. sqlplus user/pass@connect @scriptname Don&#8217;t forget that there should be an exit command at the end of the sql. Otherwise, the sqlplus will not exit and just stop running until you manually call exit. Now, if the&#8230;]]></description>
			<content:encoded><![CDATA[<p>If you want to run an SQL script via sqlplus in the shell prompt, the command is as below.<br />
<code><br />
sqlplus user/pass@connect @scriptname<br />
</code><br />
Don&#8217;t forget that there should be an exit command at the end of the sql. Otherwise, the sqlplus will not exit and just stop running until you manually call exit.</p>
<p>Now, if the SQL script does not have exit at the end, you&#8217;ll have to do the following.<br />
<code><br />
echo exit | sqlplus user/pass@connect @scriptname<br />
</code></p>
<p>This is another trivial thing that can be easily forgotten. </p>
]]></content:encoded>
			<wfw:commentRss>http://kwatog.com/blog/run-sql-script-via-sqlplus-via-prompt/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Drop/Remove Column in Oracle Table</title>
		<link>http://kwatog.com/blog/dropremove-column-in-oracle-table/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=dropremove-column-in-oracle-table</link>
		<comments>http://kwatog.com/blog/dropremove-column-in-oracle-table/#comments</comments>
		<pubDate>Thu, 12 Aug 2010 03:36:24 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Oracle]]></category>

		<guid isPermaLink="false">http://kwatog.com/?p=395</guid>
		<description><![CDATA[Here&#8217;s a quick post on how to drop a column/field in a table. Dropping One Column alter table table_name drop column col_name1; Dropping Multiple Columns alter table table_name drop (col_name1, col_name2); Simple, eh?]]></description>
			<content:encoded><![CDATA[<p>Here&#8217;s a quick post on how to drop a column/field in a table. </p>
<p><strong>Dropping One Column</strong><br />
<code>alter table<br />
   table_name<br />
drop column col_name1;</code></p>
<p><strong>Dropping Multiple Columns</strong><br />
<code><br />
alter table<br />
   table_name<br />
drop    (col_name1, col_name2); </code></p>
<p>Simple, eh?</p>
]]></content:encoded>
			<wfw:commentRss>http://kwatog.com/blog/dropremove-column-in-oracle-table/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

