<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-1555497785494345295</id><updated>2012-01-21T15:05:13.757-08:00</updated><category term='Tuning'/><category term='1.5.3'/><category term='SQLDEVELOPER'/><category term='Bridge'/><category term='SQL'/><category term='sqlpath'/><category term='Connections'/><category term='import'/><category term='Oracle Develop'/><category term='new'/><category term='proxy_user'/><category term='SQLDEVELOPER ORACLE'/><category term='Threads'/><category term='sqlplus'/><category term='database migration'/><category term='export'/><category term='Instrumentation'/><category term='SQL_Developer SQL*Plus'/><category term='define'/><category term='dbms_output sqldeveloper oracle'/><category term='configuration'/><category term='Oracle XE'/><category term='11g'/><category term='UKOUG'/><category term='EA'/><category term='explain plan'/><category term='scripts'/><category term='laptop'/><category term='3.1'/><category term='autotrace'/><category term='virtualbox'/><category term='reports'/><category term='glogin'/><category term='refactoring'/><category term='Openworld'/><category term='Migration'/><category term='formatting'/><category term='Java'/><category term='1.5.4'/><category term='external tools'/><category term='SQL*Plus'/><category term='scan'/><category term='oracle'/><category term='worksheet'/><category term='stack'/><category term='Data pump'/><category term='simplicity sql developer'/><category term='substitution variables'/><category term='SQL Developer'/><category term='Migration Workbench SQL Developer'/><category term='3.0'/><category term='DBA'/><category term='network adapters'/><category term='TABLE EDIT ORACLE SQLDEVLOPER'/><title type='text'>Barry McGillin</title><subtitle type='html'>Oracle SQL Developer and Database Migration, with lots of core Oracle tech as well!</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://barrymcgillin.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://barrymcgillin.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Barry McGillin</name><uri>http://www.blogger.com/profile/12215907295974180145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='20' src='http://4.bp.blogspot.com/_E2ChyGhl2so/Sa0bpLVUq3I/AAAAAAAAAcg/RvJ-6Z_DvFM/s1600-R/barry.png'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>52</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-1555497785494345295.post-7098133084958362272</id><published>2011-12-07T01:07:00.001-08:00</published><updated>2011-12-07T03:11:37.344-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SQLDEVELOPER'/><category scheme='http://www.blogger.com/atom/ns#' term='network adapters'/><category scheme='http://www.blogger.com/atom/ns#' term='laptop'/><category scheme='http://www.blogger.com/atom/ns#' term='configuration'/><category scheme='http://www.blogger.com/atom/ns#' term='virtualbox'/><title type='text'>Using the Oracle Developer Days VirtualBox Image</title><content type='html'>As many of you know @krisrice put together a great VM for the Oracle Developer Days and while the content is great for education, I find us using it more and more a default scratch database on laptops. &amp;nbsp;As usual, being 'Networkly&amp;nbsp;challenged', it took me some time to figure out which network adapters did what and why. &amp;nbsp;This is as much a note for me as it is to share with you :).&lt;br /&gt;&lt;br /&gt;First of all, you need to install VirtualBox, which is found &lt;a href="http://www.oracle.com/technetwork/server-storage/virtualbox/overview/index.html" target="_blank"&gt;here&lt;/a&gt;. &amp;nbsp;Then download one of the prebuilt VirtualBox images for the Developer Days. &amp;nbsp;You can choose your one &lt;a href="http://www.oracle.com/technetwork/community/developer-vm/index.html" target="_blank"&gt;here&lt;/a&gt;. &amp;nbsp;Download the ova file and then import your VM into VirtualBox. &lt;br /&gt;&lt;br /&gt;To import, choose File&amp;gt; Import Appliance in VirtualBox and click choose to select the directory where you want the VM to live, then select your ova file. &amp;nbsp;In this example, I'm using @krisrice's Oracle DeveloperDays VM. Once you click finish, and agree to the licenses, you'll see the 'Oracle Developer Days' VM in VirtualBox with a powered off state. &lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-mT98bQGiRzE/Tt8z0SNuEdI/AAAAAAAABMM/3xSj0Qyiin4/s1600/Untitled.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="264" src="http://4.bp.blogspot.com/-mT98bQGiRzE/Tt8z0SNuEdI/AAAAAAAABMM/3xSj0Qyiin4/s320/Untitled.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Great. &amp;nbsp;We're ready to fire up the box and play inside it. &amp;nbsp;All passwords for this are 'oracle', so you cant go wrong. In this, the database is all setup automatically, as is this list of stuff.&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Oracle Linux 5&lt;/li&gt;&lt;li&gt;Oracle Database 11g Release 2 Enterprise Edition&lt;/li&gt;&lt;li&gt;Oracle TimesTen In-Memory Database Cache&lt;/li&gt;&lt;li&gt;Oracle XML DB&lt;/li&gt;&lt;li&gt;Oracle SQL Developer&lt;/li&gt;&lt;li&gt;Oracle SQL Developer Data Modeler&lt;/li&gt;&lt;li&gt;Oracle Application Express&lt;/li&gt;&lt;li&gt;Oracle JDeveloper&lt;/li&gt;&lt;li&gt;Hands-On-Labs (accessed via the Toolbar Menu in Firefox)&lt;/li&gt;&lt;/ul&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-kxxQ9wEKxc4/Tt899vRGD4I/AAAAAAAABMU/IzqOT1ymtDY/s1600/linux.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="146" src="http://4.bp.blogspot.com/-kxxQ9wEKxc4/Tt899vRGD4I/AAAAAAAABMU/IzqOT1ymtDY/s320/linux.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;So now, login to the vm with oracle/oracle and a terminal window will show you whats available and the network profiles you setup in the VM settings. &amp;nbsp;The network settings I setup for this is here&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-aEv0MVjE5A4/Tt8-pUIeoSI/AAAAAAAABMc/jg8yIT4ZuD0/s1600/networkvb.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="65" src="http://2.bp.blogspot.com/-aEv0MVjE5A4/Tt8-pUIeoSI/AAAAAAAABMc/jg8yIT4ZuD0/s320/networkvb.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;These two adapters do separate things. &amp;nbsp;The bridged adapter will assign an IP address from the wireless NIC. &amp;nbsp;This is setup by default when you install the VM and allows you to get access to the internet from the VM. &amp;nbsp;The NAT adapter will allow you to access the VM from the host machine when you have no physical NIC or internet available. &amp;nbsp;This happened me yesterday when presenting some SQLDeveloper functionality. &amp;nbsp;By enabling the NAT adapter and setting up a few port forwarding rules, we can ssh into the VM and connect SQL Developer to the normal LISTENER port.&lt;br /&gt;The NAT adapter looks like this.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-bScMOHG4tIw/Tt9BFwe5MHI/AAAAAAAABMk/RQEEKfOV2kU/s1600/NATadaptersetting.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="265" src="http://2.bp.blogspot.com/-bScMOHG4tIw/Tt9BFwe5MHI/AAAAAAAABMk/RQEEKfOV2kU/s320/NATadaptersetting.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;and setting up two port forwarding rules, gives us this&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-KeEApFkMrmk/Tt9BRZ4VlCI/AAAAAAAABMs/VUKdcnUJTiY/s1600/portforwarding.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="267" src="http://3.bp.blogspot.com/-KeEApFkMrmk/Tt9BRZ4VlCI/AAAAAAAABMs/VUKdcnUJTiY/s320/portforwarding.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;When you login to the VM, you'll see this on the terminal window.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-OblQVmWVnPM/Tt9Cj2i4q1I/AAAAAAAABM0/jUzbpvsUpBI/s1600/terminaldetails.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="223" src="http://1.bp.blogspot.com/-OblQVmWVnPM/Tt9Cj2i4q1I/AAAAAAAABM0/jUzbpvsUpBI/s320/terminaldetails.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;This setup will allow you to spark up firefox in the VM and connect to the internet using the local network ip 192.168.1.42. &amp;nbsp;Now, if we switch off the Airport and disable the bridging adapter, we should still be able to connect to the VM from outside. &amp;nbsp;Restarting the VM, gives us this terminal window on login to the oracle account&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-74UugOCjKbU/Tt9Eg86mjCI/AAAAAAAABM8/wcwZvsiKvEg/s1600/terminal2.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="222" src="http://2.bp.blogspot.com/-74UugOCjKbU/Tt9Eg86mjCI/AAAAAAAABM8/wcwZvsiKvEg/s320/terminal2.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;Now, we have no external IP, but we have our port forwarding rules set up to get access to the VM from outside. &amp;nbsp;Now, we have two rules, one which maps anything on port 2222 to port 22 on the guest. &amp;nbsp;this means we can ssh into the VM on port 2222 on the host. So, connecting with this&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-SxZ2WpUcVMQ/Tt9HktCUJoI/AAAAAAAABNE/71FbVWSqClU/s1600/externTerm.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="54" src="http://2.bp.blogspot.com/-SxZ2WpUcVMQ/Tt9HktCUJoI/AAAAAAAABNE/71FbVWSqClU/s320/externTerm.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;and we get the login terminal from the VM&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-KB51g09vZdg/Tt9HwJjNDqI/AAAAAAAABNM/cdh0s0Jyduc/s1600/termconnected.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="250" src="http://4.bp.blogspot.com/-KB51g09vZdg/Tt9HwJjNDqI/AAAAAAAABNM/cdh0s0Jyduc/s320/termconnected.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;Brilliant. &amp;nbsp;Now, Lets see SQL Developer connect to the VM too. &amp;nbsp;We setup the connection like a connection to xe on localhost, except the SID is orcl on the VM.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-DdEGRncleeM/Tt9I6WBQwkI/AAAAAAAABNU/UhGXuo-qCzY/s1600/sqldevconn.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="166" src="http://4.bp.blogspot.com/-DdEGRncleeM/Tt9I6WBQwkI/AAAAAAAABNU/UhGXuo-qCzY/s320/sqldevconn.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;and we can look at the database version report which shows us what database we are connected to&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/--I0HjN9h1Rc/Tt9JGkm9ezI/AAAAAAAABNc/E3V0fsMrwn0/s1600/version.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="108" src="http://1.bp.blogspot.com/--I0HjN9h1Rc/Tt9JGkm9ezI/AAAAAAAABNc/E3V0fsMrwn0/s320/version.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;And now, you're connected and good to go. &amp;nbsp;This is great for doing demos in a canned environment, especially when you dont have access to an internet connection when doing a demo or showing something off.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1555497785494345295-7098133084958362272?l=barrymcgillin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://barrymcgillin.blogspot.com/feeds/7098133084958362272/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1555497785494345295&amp;postID=7098133084958362272' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/7098133084958362272'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/7098133084958362272'/><link rel='alternate' type='text/html' href='http://barrymcgillin.blogspot.com/2011/12/using-oracle-developer-days-virtualbox.html' title='Using the Oracle Developer Days VirtualBox Image'/><author><name>Barry McGillin</name><uri>http://www.blogger.com/profile/12215907295974180145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='20' src='http://4.bp.blogspot.com/_E2ChyGhl2so/Sa0bpLVUq3I/AAAAAAAAAcg/RvJ-6Z_DvFM/s1600-R/barry.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-mT98bQGiRzE/Tt8z0SNuEdI/AAAAAAAABMM/3xSj0Qyiin4/s72-c/Untitled.png' height='72' width='72'/><thr:total>5</thr:total><georss:featurename>17 Drumconnelly Rd, Omagh BT78 1RR, UK</georss:featurename><georss:point>54.545932324227 -7.27569580078125</georss:point><georss:box>54.541327324227005 -7.28556630078125 54.550537324227 -7.26582530078125</georss:box></entry><entry><id>tag:blogger.com,1999:blog-1555497785494345295.post-3247516113783067821</id><published>2011-12-05T10:42:00.000-08:00</published><updated>2011-12-05T10:44:53.356-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SQLDEVELOPER'/><category scheme='http://www.blogger.com/atom/ns#' term='autotrace'/><category scheme='http://www.blogger.com/atom/ns#' term='explain plan'/><category scheme='http://www.blogger.com/atom/ns#' term='Tuning'/><title type='text'>Explain Plan, Autotrace and Diff</title><content type='html'>&lt;br /&gt;A SQL statement can be executed in many different ways, such as full table scans, index scans, nested loops, and hash joins. The query optimizer determines the most efficient way to execute a SQL statement after considering many factors related to the objects referenced and the conditions specified in the query. This determination is an important step in the processing of any SQL statement and can greatly affect execution time.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="BP"&gt;The&amp;nbsp;&lt;code&gt;EXPLAIN&lt;/code&gt;&amp;nbsp;&lt;code&gt;PLAN&lt;/code&gt;&amp;nbsp;results let you determine whether the optimizer selects a particular execution plan, such as, nested loops join. It also helps you to understand the optimizer decisions, such as why the optimizer chose a nested loops join instead of a hash join, and lets you understand the performance of a query.&lt;/div&gt;&lt;a href="http://www.blogger.com/blogger.g?blogID=1555497785494345295" name="18851"&gt;&lt;/a&gt;&lt;br /&gt;&lt;div align="center"&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-QwJdE1OV_EI/TozckKfyh6I/AAAAAAAABKQ/TPLIb7LBAkg/s1600/explain.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="182" src="http://1.bp.blogspot.com/-QwJdE1OV_EI/TozckKfyh6I/AAAAAAAABKQ/TPLIb7LBAkg/s320/explain.PNG" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;You can examine the execution plan chosen by the optimizer for a SQL statement by using the EXPLAIN PLAN button on the worksheet. When the statement is issued, the optimizer chooses an execution plan and then inserts data describing the plan into a database table. SQL Developer looks at the&amp;nbsp;table and displays the tree operations. &amp;nbsp;Looking at the example, we can see the query is doing a&amp;nbsp;Cartesian&amp;nbsp;product&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-kHpI_SjG0aA/TozckkKICCI/AAAAAAAABKU/AQseIYMf8tw/s1600/autotrace.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="278" src="http://3.bp.blogspot.com/-kHpI_SjG0aA/TozckkKICCI/AAAAAAAABKU/AQseIYMf8tw/s320/autotrace.PNG" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;Similary, when you use autotrace, which, on SQL Developer, is the button beside the explain plan. AND, you can diff two plans to &amp;nbsp;see what the difference is between two plans, as you can see below.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-oxnFj8Ra6Lk/Tozc9o8KSyI/AAAAAAAABKY/zNQpPNVgbXE/s1600/explain_trace_diff.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="170" src="http://2.bp.blogspot.com/-oxnFj8Ra6Lk/Tozc9o8KSyI/AAAAAAAABKY/zNQpPNVgbXE/s400/explain_trace_diff.PNG" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;However, even though we can show you what a plan looks like, it&amp;nbsp;&lt;span class="Apple-style-span" style="background-color: white; font-family: Tahoma, sans-serif; font-size: x-small;"&gt;cannot differentiate between well-tuned statements and those that perform poorly.&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: white; font-family: Tahoma, sans-serif; font-size: x-small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="background-color: white; font-family: Tahoma, sans-serif; font-size: small;"&gt;For example, an&amp;nbsp;&lt;code style="font-size: 12px;"&gt;EXPLAIN&lt;/code&gt;&amp;nbsp;&lt;code style="font-size: 12px;"&gt;PLAN&lt;/code&gt;&amp;nbsp;output that shows that a statement uses an index does not necessarily mean that the statement runs efficiently. Sometimes indexes can be extremely inefficient. In this case, you should examine the following:&lt;/div&gt;&lt;ul style="background-color: white; font-family: Tahoma, sans-serif; font-size: small;"&gt;&lt;li&gt;The columns of the index being used&lt;/li&gt;&lt;li&gt;Their selectivity (fraction of table being accessed)&lt;/li&gt;&lt;/ul&gt;&lt;div style="background-color: white; font-family: Tahoma, sans-serif; font-size: small;"&gt;It is best to use&amp;nbsp;&lt;code style="font-size: 12px;"&gt;EXPLAIN&lt;/code&gt;&amp;nbsp;&lt;code style="font-size: 12px;"&gt;PLAN&lt;/code&gt;&amp;nbsp;to determine an access plan, and then later prove that it is the optimal plan through testing. When evaluating a plan, examine the statement's actual resource consumption.&lt;/div&gt;&lt;div style="background-color: white; font-family: Tahoma, sans-serif; font-size: small;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="background-color: white; font-family: Tahoma, sans-serif; font-size: small;"&gt;And from the doc!:&amp;nbsp;&lt;/div&gt;&lt;div style="background-color: white; font-family: Tahoma, sans-serif; font-size: small;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="background-color: white;"&gt;&lt;/div&gt;&lt;div style="font-family: Tahoma, sans-serif; font-size: small;"&gt;In addition to running the&amp;nbsp;&lt;code style="font-size: 12px;"&gt;EXPLAIN&lt;/code&gt;&amp;nbsp;&lt;code style="font-size: 12px;"&gt;PLAN&lt;/code&gt;&amp;nbsp;command and displaying the plan, you can use the&amp;nbsp;&lt;code style="font-size: 12px;"&gt;V$SQL_PLAN&lt;/code&gt;&amp;nbsp;views to display the execution plan of a SQL statement.&amp;nbsp;After the statement has executed, you can display the plan by querying the&amp;nbsp;&lt;code style="font-size: 12px;"&gt;V$SQL_PLAN&lt;/code&gt;&amp;nbsp;view.&amp;nbsp;&lt;code style="font-size: 12px;"&gt;V$SQL_PLAN&lt;/code&gt;&amp;nbsp;contains the execution plan for every statement stored in the cursor cache.&amp;nbsp;&lt;/div&gt;&lt;div style="font-family: Tahoma, sans-serif; font-size: small;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Tahoma, sans-serif; font-size: small;"&gt;&lt;a href="http://www.blogger.com/blogger.g?blogID=1555497785494345295" id="sthref1371" name="sthref1371"&gt;&lt;/a&gt;The&amp;nbsp;&lt;code style="font-size: 12px;"&gt;V$SQL_PLAN_STATISTICS&lt;/code&gt;&amp;nbsp;view provides the actual execution statistics for every operation in the plan, such as the number of output rows and elapsed time. All statistics, except the number of output rows, are cumulative. For example, the statistics for a join operation also includes the statistics for its two inputs. The statistics in&amp;nbsp;&lt;code style="font-size: 12px;"&gt;V$SQL_PLAN_STATISTICS&lt;/code&gt;&amp;nbsp;are available for cursors that have been compiled with the&amp;nbsp;&lt;code style="font-size: 12px;"&gt;STATISTICS_LEVEL&lt;/code&gt;&amp;nbsp;initialization parameter set to&lt;code style="font-size: 12px;"&gt;ALL&lt;/code&gt;.&lt;/div&gt;&lt;div style="font-family: Tahoma, sans-serif; font-size: small;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Tahoma, sans-serif; font-size: small;"&gt;The&amp;nbsp;&lt;a href="http://www.blogger.com/blogger.g?blogID=1555497785494345295" id="sthref1372" name="sthref1372"&gt;&lt;/a&gt;&lt;code style="font-size: 12px;"&gt;V$SQL_PLAN_STATISTICS_ALL&lt;/code&gt;&amp;nbsp;view enables side by side comparisons of the estimates that the optimizer provides for the number of rows and elapsed time. This view combines both&amp;nbsp;&lt;code style="font-size: 12px;"&gt;V$SQL_PLAN&lt;/code&gt;&amp;nbsp;and&amp;nbsp;&lt;code style="font-size: 12px;"&gt;V$SQL_PLAN_STATISTICS&lt;/code&gt;&amp;nbsp;information for every cursor.&lt;/div&gt;&lt;div style="font-family: Tahoma, sans-serif; font-size: small;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;span class="Apple-style-span" style="font-family: Tahoma, sans-serif; font-size: x-small;"&gt;Anyway,&amp;nbsp;don't&amp;nbsp;take my word for all this, try it on SQLDeveloper today and you can follow Tom Kyte's process for tuning sql statements.&lt;/span&gt;&lt;br /&gt;&lt;div style="font-family: Tahoma, sans-serif; font-size: small;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Tahoma, sans-serif; font-size: small;"&gt;&lt;a href="http://asktom.oracle.com/pls/asktom/f?p=100:11:0::::P11_QUESTION_ID:8764517459743"&gt;http://asktom.oracle.com/pls/asktom/f?p=100:11:0::::P11_QUESTION_ID:8764517459743&lt;/a&gt;&lt;/div&gt;&lt;div style="font-family: Tahoma, sans-serif; font-size: small;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Tahoma, sans-serif; font-size: small;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Tahoma, sans-serif; font-size: small;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1555497785494345295-3247516113783067821?l=barrymcgillin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://barrymcgillin.blogspot.com/feeds/3247516113783067821/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1555497785494345295&amp;postID=3247516113783067821' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/3247516113783067821'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/3247516113783067821'/><link rel='alternate' type='text/html' href='http://barrymcgillin.blogspot.com/2011/10/explain-plan-autotrace-and-diff.html' title='Explain Plan, Autotrace and Diff'/><author><name>Barry McGillin</name><uri>http://www.blogger.com/profile/12215907295974180145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='20' src='http://4.bp.blogspot.com/_E2ChyGhl2so/Sa0bpLVUq3I/AAAAAAAAAcg/RvJ-6Z_DvFM/s1600-R/barry.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/-QwJdE1OV_EI/TozckKfyh6I/AAAAAAAABKQ/TPLIb7LBAkg/s72-c/explain.PNG' height='72' width='72'/><thr:total>0</thr:total><georss:featurename>17 Drumconnelly Rd, Omagh BT78 1, UK</georss:featurename><georss:point>54.545932324227 -7.275094985961914</georss:point><georss:box>54.543629824227004 -7.280030485961914 54.548234824227 -7.270159485961914</georss:box></entry><entry><id>tag:blogger.com,1999:blog-1555497785494345295.post-77004144754596188</id><published>2011-11-28T03:03:00.001-08:00</published><updated>2011-11-28T03:14:10.940-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SQL Developer'/><category scheme='http://www.blogger.com/atom/ns#' term='UKOUG'/><category scheme='http://www.blogger.com/atom/ns#' term='Instrumentation'/><category scheme='http://www.blogger.com/atom/ns#' term='refactoring'/><category scheme='http://www.blogger.com/atom/ns#' term='Tuning'/><title type='text'>UKOUG 2011</title><content type='html'>&lt;div class="separator" style="clear: both; text-align: left;"&gt;I'm speaking next week at the UK Oracle User Group at the ICC in Birmingham. The topic will be one I've posted several times about which is Tuning, Refactoring and Instrumentation. &amp;nbsp; Have a look at the agenda, and if you are in town, come along. &amp;nbsp;You can click on the image to go to the conference site and check out the agenda.&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://www.oug.org/ukoug2011"&gt;&lt;img border="0" height="104" src="http://www.oug.org/resourcepack/UKOUG2011/ukoug2011_ResourcePack_Speaking.gif" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1555497785494345295-77004144754596188?l=barrymcgillin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://barrymcgillin.blogspot.com/feeds/77004144754596188/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1555497785494345295&amp;postID=77004144754596188' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/77004144754596188'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/77004144754596188'/><link rel='alternate' type='text/html' href='http://barrymcgillin.blogspot.com/2011/11/ukoug-2011.html' title='UKOUG 2011'/><author><name>Barry McGillin</name><uri>http://www.blogger.com/profile/12215907295974180145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='20' src='http://4.bp.blogspot.com/_E2ChyGhl2so/Sa0bpLVUq3I/AAAAAAAAAcg/RvJ-6Z_DvFM/s1600-R/barry.png'/></author><thr:total>0</thr:total><georss:featurename>17 Drumconnelly Rd, Omagh BT78 1, UK</georss:featurename><georss:point>54.54568339296317 -7.274665832519531</georss:point><georss:box>54.54338089296317 -7.2796013325195315 54.54798589296317 -7.269730332519531</georss:box></entry><entry><id>tag:blogger.com,1999:blog-1555497785494345295.post-6238615541181562920</id><published>2011-11-18T17:57:00.001-08:00</published><updated>2011-11-22T03:52:00.041-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SQLDEVELOPER'/><category scheme='http://www.blogger.com/atom/ns#' term='glogin'/><category scheme='http://www.blogger.com/atom/ns#' term='sqlpath'/><category scheme='http://www.blogger.com/atom/ns#' term='SQL*Plus'/><title type='text'>login.sql, SQLPROMPT and worksheets</title><content type='html'>SQLDeveloper has had support for a login.sql for several releases now. &amp;nbsp;You can set this in the preferences at&lt;br /&gt;&lt;br /&gt;&lt;pre style="background-color: #eeeeee; border: 1px dashed #999999; color: black; font-family: Andale Mono, Lucida Console, Monaco, fixed, monospace; font-size: 12px; line-height: 14px; overflow: auto; padding: 5px; width: 100%;"&gt;&lt;code&gt;Tools -&amp;gt; Prefernces -&amp;gt; Database&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;You can set your login.sql here.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-xJ4q_9hk-tI/Tsougm_qiZI/AAAAAAAABLg/kiJatUOhpqU/s1600/loginpref.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="145" src="http://4.bp.blogspot.com/-xJ4q_9hk-tI/Tsougm_qiZI/AAAAAAAABLg/kiJatUOhpqU/s400/loginpref.PNG" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Now, when SQL*Plus starts up, it looks for a global login script called glogin.sql in the $ORACLE_HOME/sqlplus/admin directory. If found, this script will be executed.&lt;br /&gt;Thereafter, SQL*Plus will try to find a local login script called login.sql in the directory where you start sqlplus from, alternatively the directories listed in the SQLPATH environment variable. When found, sqlplus will execute it. &amp;nbsp;Here's my login.sql for SQL*Plus&lt;br /&gt;&lt;pre style="background-color: #eeeeee; border: 1px dashed #999999; color: black; font-family: Andale Mono, Lucida Console, Monaco, fixed, monospace; font-size: 12px; line-height: 14px; overflow: auto; padding: 5px; width: 100%;"&gt;&lt;code&gt;define gname=idle&lt;br /&gt;column global_name new_value gname&lt;br /&gt;select lower(user) || '@' || substr( global_name, 1, decode( dot, 0, length(global_name), dot-1) ) global_name&lt;br /&gt;  from (select global_name, instr(global_name,'.') dot from global_name );&lt;br /&gt;set sqlprompt '&amp;amp;gname&amp;gt; '&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;and when I login to sqlplus, I get this.&lt;br /&gt;&lt;pre style="background-color: #eeeeee; border: 1px dashed #999999; color: black; font-family: Andale Mono, Lucida Console, Monaco, fixed, monospace; font-size: 12px; line-height: 14px; overflow: auto; padding: 5px; width: 100%;"&gt;&lt;code&gt;SQL*Plus: Release 11.2.0.2.0 Beta on Mon Nov 21 11:05:58 2011&lt;br /&gt;&lt;br /&gt;Copyright (c) 1982, 2010, Oracle.  All rights reserved.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Connected to:&lt;br /&gt;Oracle Database 11g Express Edition Release 11.2.0.2.0 - Beta&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;GLOBAL_NAME&lt;br /&gt;-----------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;barry@XE&lt;br /&gt;&lt;br /&gt;barry@XE&amp;gt;&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;Obviously, in SQLDeveloper, this won't mean anything as prompts are not there, however, the variables you set and the column formats, titles, pagesizes etc, will be preserved.&lt;br /&gt;&lt;br /&gt;For example, in our login2.sql &amp;nbsp;list in the preferences above, we set a couple of column settings and for fun, lets set the prompt variable too. &lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-oPJOwPXN41w/TsozAZFiLiI/AAAAAAAABLo/_uipUB2tP_g/s1600/login2sql.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="186" src="http://3.bp.blogspot.com/-oPJOwPXN41w/TsozAZFiLiI/AAAAAAAABLo/_uipUB2tP_g/s400/login2sql.PNG" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;As shown above, we now have a login.sql defined in the preferences. When we make a connection, the login.sql will be run and any settings will be applied to the database. &amp;nbsp;We will also hold onto any SQL*Plus variables defined so they can be used in any worksheet that is started using this connection.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/--CJj2WRLD7M/Tsoz147sFxI/AAAAAAAABLw/PZsbB21UlzU/s1600/connectbarry.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/--CJj2WRLD7M/Tsoz147sFxI/AAAAAAAABLw/PZsbB21UlzU/s1600/connectbarry.PNG" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;When you connect, you get the new worksheet, and the sql that was run produces any output in the messages.log. &amp;nbsp;The reason for this is you can connect to the database without spawning a worksheet and this lets you know of any output from that login script we put together earlier.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-KnlYLexq8UE/Tso0rdJWpaI/AAAAAAAABL4/rL0xP4qkkBI/s1600/loginsqloutput.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/-KnlYLexq8UE/Tso0rdJWpaI/AAAAAAAABL4/rL0xP4qkkBI/s1600/loginsqloutput.PNG" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Now, we are connected, any worksheet created on that connection will have the context of the original script.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-RiYav0IJscw/Tso39IhtreI/AAAAAAAABMA/iBOv3xMoXSU/s1600/logindefine.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="189" src="http://1.bp.blogspot.com/-RiYav0IJscw/Tso39IhtreI/AAAAAAAABMA/iBOv3xMoXSU/s320/logindefine.PNG" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Lastly, you can also set your worksheet name to be a substitution variable as well&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style="background-color: #eeeeee; border-bottom-color: rgb(153, 153, 153); border-bottom-style: dashed; border-bottom-width: 1px; border-left-color: rgb(153, 153, 153); border-left-style: dashed; border-left-width: 1px; border-right-color: rgb(153, 153, 153); border-right-style: dashed; border-right-width: 1px; border-top-color: rgb(153, 153, 153); border-top-style: dashed; border-top-width: 1px; font-family: 'Andale Mono', 'Lucida Console', Monaco, fixed, monospace; font-size: 12px; line-height: 14px; overflow-x: auto; overflow-y: auto; padding-bottom: 5px; padding-left: 5px; padding-right: 5px; padding-top: 5px; width: 651px;"&gt;&lt;code&gt;set worksheetname &amp;amp;gname&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;which will swap you default worksheet name to your connection credentials shown above.&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1555497785494345295-6238615541181562920?l=barrymcgillin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://barrymcgillin.blogspot.com/feeds/6238615541181562920/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1555497785494345295&amp;postID=6238615541181562920' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/6238615541181562920'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/6238615541181562920'/><link rel='alternate' type='text/html' href='http://barrymcgillin.blogspot.com/2011/11/loginsql-sqlp.html' title='login.sql, SQLPROMPT and worksheets'/><author><name>Barry McGillin</name><uri>http://www.blogger.com/profile/12215907295974180145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='20' src='http://4.bp.blogspot.com/_E2ChyGhl2so/Sa0bpLVUq3I/AAAAAAAAAcg/RvJ-6Z_DvFM/s1600-R/barry.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-xJ4q_9hk-tI/Tsougm_qiZI/AAAAAAAABLg/kiJatUOhpqU/s72-c/loginpref.PNG' height='72' width='72'/><thr:total>1</thr:total><georss:featurename>15 Drumconnelly Rd, Omagh BT78 1, UK</georss:featurename><georss:point>54.54583275190373 -7.2747087478637695</georss:point><georss:box>54.54353025190373 -7.27964424786377 54.54813525190373 -7.269773247863769</georss:box></entry><entry><id>tag:blogger.com,1999:blog-1555497785494345295.post-4682560848850066252</id><published>2011-11-15T08:52:00.001-08:00</published><updated>2011-11-16T04:04:21.967-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='scripts'/><category scheme='http://www.blogger.com/atom/ns#' term='define'/><category scheme='http://www.blogger.com/atom/ns#' term='SQL Developer'/><category scheme='http://www.blogger.com/atom/ns#' term='Migration Workbench SQL Developer'/><category scheme='http://www.blogger.com/atom/ns#' term='substitution variables'/><category scheme='http://www.blogger.com/atom/ns#' term='SQL'/><category scheme='http://www.blogger.com/atom/ns#' term='SQL*Plus'/><title type='text'>Substitution Variables in SQL*Plus</title><content type='html'>Working through security issues uncovers some interesting things. Anyone who has developed scripts for building out schemas for an application will have had the issues of passing variables to subscripts or managing password visibility when creating users, building objects or granting permissions&lt;br /&gt;&lt;br /&gt;SQLDeveloper and SQL*Plus have substitution variables to solve this problem. &amp;nbsp;Basically, there are two types of substitution variables,&amp;nbsp; &amp;amp; and &amp;amp;&amp;amp;. &amp;nbsp;&amp;amp;foo is used to refer to the variable foo. &amp;nbsp;&amp;amp;&amp;amp;foo is also used to refer to the variable foo. &amp;nbsp;The main difference between the two variables is that first time SQL*Plus comes across a variable defined with &amp;amp;&amp;amp;, e.g., &amp;amp;&amp;amp;foo, it prompts for the value and then uses this values for every other&amp;nbsp;occurrence&amp;nbsp;of the variable. &amp;amp;foo on the other hand will prompt for the variable, use it and then discard the value so the next time it is seen, it will prompt again.So, now an example. &amp;nbsp;Lets assume we want to create a user db1 and db2 with some tables in each user. We can define a simple script for each one.&lt;br /&gt;&lt;br /&gt;&lt;pre style="background-color: #eeeeee; border: 1px dashed #999999; color: black; font-family: Andale Mono, Lucida Console, Monaco, fixed, monospace; font-size: 12px; line-height: 14px; overflow: auto; padding: 5px; width: 100%;"&gt;&lt;code&gt;define db1_password=&amp;amp;&amp;amp;db1&lt;br /&gt;define db2_password=&amp;amp;&amp;amp;db2&lt;br /&gt;@@users.sql&lt;br /&gt;@@db1.sql&lt;br /&gt;@@db2.sql&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;Now, this script does three things.&lt;br /&gt;&lt;ol&gt;&lt;li&gt;it defines two variables for the passwords of the two users we are going to create.&lt;/li&gt;&lt;li&gt;@@users.sql sets up the users for us. Remember, in SQL*Plus, there is only ever one connection active, so whenever you have a connect statement in your script, that will be the user running the script until you change it. In this case above, we're starting with a privileged user to create the users.&lt;/li&gt;&lt;li&gt;@@db1.sql and @@db2.sql create our users for us and we will create a table in each one. We'll see that script in a moment.&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;&lt;pre style="background-color: #eeeeee; border: 1px dashed #999999; color: black; font-family: Andale Mono, Lucida Console, Monaco, fixed, monospace; font-size: 12px; line-height: 14px; overflow: auto; padding: 5px; width: 100%;"&gt;&lt;code&gt;drop user user1 cascade;&lt;br /&gt;prompt creating user user1&lt;br /&gt;create user user1 identified by &amp;amp;&amp;amp;db1_password;&lt;br /&gt;grant connect, resource to user1;&lt;br /&gt;drop user user2 cascade;&lt;br /&gt;prompt creating user user2&lt;br /&gt;create user user2 identified by &amp;amp;&amp;amp;db2_password;&lt;br /&gt;grant connect, resource to user2;&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;db1.sql and db2.sql are identical apart from user names.&lt;br /&gt;&lt;br /&gt;&lt;pre style="background-color: #eeeeee; border: 1px dashed #999999; color: black; font-family: Andale Mono, Lucida Console, Monaco, fixed, monospace; font-size: 12px; line-height: 14px; overflow: auto; padding: 5px; width: 100%;"&gt;&lt;code&gt;connect user1/&amp;amp;&amp;amp;db1&lt;br /&gt;create table table1 (id number, name varchar2(10));&lt;br /&gt;insert into table1 values (1,'barry');&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;Substitution variables are passed to any subscript called from the main script. &amp;nbsp;The initial &amp;amp;&amp;amp;db1 and &amp;amp;&amp;amp;db2 are prompted for and set to the variables db1_password and db2_password&lt;br /&gt;From then on, the subscripts use the variables to connect to each user.&lt;br /&gt;&lt;br /&gt;Finally, the output from all of this is below. &amp;nbsp;I have VERIFY=ON here to show the substitutions going through, but for any real world scenario, you'll want to switch that off avoid printing the passwords.&lt;br /&gt;&lt;br /&gt;&lt;pre style="background-color: #eeeeee; border: 1px dashed #999999; color: black; font-family: Andale Mono, Lucida Console, Monaco, fixed, monospace; font-size: 12px; line-height: 14px; overflow: auto; padding: 5px; width: 100%;"&gt;&lt;code&gt;user USER1 dropped.&lt;br /&gt;creating user user1&lt;br /&gt;old:create user user1 identified by &amp;amp;&amp;amp;db1_password&lt;br /&gt;new:create user user1 identified by db1&lt;br /&gt;user USER1 created.&lt;br /&gt;grant succeeded.&lt;br /&gt;user USER2 dropped.&lt;br /&gt;creating user user2&lt;br /&gt;old:create user user2 identified by &amp;amp;&amp;amp;db2_password&lt;br /&gt;new:create user user2 identified by db2&lt;br /&gt;user USER2 created.&lt;br /&gt;grant succeeded.&lt;br /&gt;old:connect user1/&amp;amp;&amp;amp;db1_password&lt;br /&gt;new:connect user1/db1&lt;br /&gt;Connected&lt;br /&gt;table TABLE1 created.&lt;br /&gt;1 rows inserted.&lt;br /&gt;old:connect user2/&amp;amp;&amp;amp;db2_password&lt;br /&gt;new:connect user2/db2&lt;br /&gt;Connected&lt;br /&gt;table TABLE2 created.&lt;br /&gt;1 rows inserted.&lt;br /&gt;Connection created by CONNECT script command disconnected&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;With verify off, you get cleaner output with no passwords. &amp;nbsp;If you need more ouput here, you can also use the prompt command to identify which script you are in and what is running.&lt;br /&gt;&lt;br /&gt;&lt;pre style="background-color: #eeeeee; border: 1px dashed #999999; color: black; font-family: Andale Mono, Lucida Console, Monaco, fixed, monospace; font-size: 12px; line-height: 14px; overflow: auto; padding: 5px; width: 100%;"&gt;&lt;code&gt;user USER1 dropped.&lt;br /&gt;creating user user1&lt;br /&gt;user USER1 created.&lt;br /&gt;grant succeeded.&lt;br /&gt;user USER2 dropped.&lt;br /&gt;creating user user2&lt;br /&gt;user USER2 created.&lt;br /&gt;grant succeeded.&lt;br /&gt;Connected&lt;br /&gt;table TABLE1 created.&lt;br /&gt;1 rows inserted.&lt;br /&gt;Connected&lt;br /&gt;table TABLE2 created.&lt;br /&gt;1 rows inserted.&lt;br /&gt;Connection created by CONNECT script command disconnected&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1555497785494345295-4682560848850066252?l=barrymcgillin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://barrymcgillin.blogspot.com/feeds/4682560848850066252/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1555497785494345295&amp;postID=4682560848850066252' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/4682560848850066252'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/4682560848850066252'/><link rel='alternate' type='text/html' href='http://barrymcgillin.blogspot.com/2011/11/substitution-variables-in-sqlplus.html' title='Substitution Variables in SQL*Plus'/><author><name>Barry McGillin</name><uri>http://www.blogger.com/profile/12215907295974180145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='20' src='http://4.bp.blogspot.com/_E2ChyGhl2so/Sa0bpLVUq3I/AAAAAAAAAcg/RvJ-6Z_DvFM/s1600-R/barry.png'/></author><thr:total>1</thr:total><georss:featurename>15 Drumconnelly Rd, Omagh BT78 1, UK</georss:featurename><georss:point>54.54565849975325 -7.2753095626831055</georss:point><georss:box>54.54335599975325 -7.280245062683106 54.54796099975325 -7.270374062683105</georss:box></entry><entry><id>tag:blogger.com,1999:blog-1555497785494345295.post-3533562844820272832</id><published>2011-11-14T07:20:00.001-08:00</published><updated>2011-11-14T07:46:31.665-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='sqlplus'/><category scheme='http://www.blogger.com/atom/ns#' term='SQL Developer'/><category scheme='http://www.blogger.com/atom/ns#' term='external tools'/><category scheme='http://www.blogger.com/atom/ns#' term='SQL*Plus'/><title type='text'>SQLPLus as an external tool in SQLDeveloper</title><content type='html'>@thatjeffsmith asked me today about running SQL*Plus from SQLDeveloper for his current sql file. &amp;nbsp;This has been shown before, but there is a simple way to add it and to get it to run your file under SQL*Plus.&lt;br /&gt;&lt;br /&gt;The only caveate on this example, is that we are using the bequeath adapter to connect to a local XE database. You can amend this to add a service after the username&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-WO-RNn2GI5w/TsEy7arLYOI/AAAAAAAABLM/lqszq66hoBE/s1600/externalplus.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="240" src="http://4.bp.blogspot.com/-WO-RNn2GI5w/TsEy7arLYOI/AAAAAAAABLM/lqszq66hoBE/s320/externalplus.PNG" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;The main steps are to point the program executable to your SQLPlus, which will populate the executable and the Run directory. &amp;nbsp;Next you need to populate the arguments, which for sqlplus are like this.&lt;br /&gt;&lt;br /&gt;&amp;nbsp;sqlplus [LOGIN}&amp;nbsp;&lt;login&gt;@&lt;filename&gt;{FILENEMAME]&lt;/filename&gt;&lt;/login&gt;&lt;br /&gt;&lt;br /&gt;where LOGIN can be any of this.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;{&lt;username&gt;[/&lt;password&gt;][@&lt;connect_identifier&gt;] | / }&lt;/connect_identifier&gt;&lt;/password&gt;&lt;/username&gt;&lt;br /&gt;&amp;nbsp;[AS {SYSDBA | SYSOPER | SYSASM}] [EDITION=value]&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;So, our arguments will be&lt;br /&gt;&lt;br /&gt;&lt;pre style="background-color: #eeeeee; border: 1px dashed #999999; color: black; font-family: Andale Mono, Lucida Console, Monaco, fixed, monospace; font-size: 12px; line-height: 14px; overflow: auto; padding: 5px; width: 100%;"&gt;&lt;code&gt;${sqldev.dbuser}/${promptl:label=Password} @${file.dir}/${file.name}&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;You can check the variables you can submit with the insert button. &amp;nbsp;I am choosing a labelled prompt for the password here for security.&lt;br /&gt;&lt;br /&gt;Once we have all that done we can see our External tool in the list of tools.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-hKbNXCu-4Mc/TsE1BjfJRdI/AAAAAAAABLU/cKOfVVPY--8/s1600/externaltoolslist.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="224" src="http://4.bp.blogspot.com/-hKbNXCu-4Mc/TsE1BjfJRdI/AAAAAAAABLU/cKOfVVPY--8/s320/externaltoolslist.PNG" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Now, all we have to do is make sure our file is in focus and click the SQL*Plus button. &amp;nbsp;This will run the file with the current user of the connection we have on the file and prompt for the password.&lt;br /&gt;&lt;br /&gt;My File looks like this&lt;br /&gt;&lt;pre style="background-color: #eeeeee; border: 1px dashed #999999; color: black; font-family: Andale Mono, Lucida Console, Monaco, fixed, monospace; font-size: 12px; line-height: 14px; overflow: auto; padding: 5px; width: 100%;"&gt;&lt;code&gt;clear screen&lt;br /&gt;select username from all_users where username like 'B%';&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;and running it with my new SQL*Plus button gives me this.&lt;br /&gt;&lt;br /&gt;&lt;pre style="background-color: #eeeeee; border: 1px dashed #999999; color: black; font-family: Andale Mono, Lucida Console, Monaco, fixed, monospace; font-size: 12px; line-height: 14px; overflow: auto; padding: 5px; width: 100%;"&gt;&lt;code&gt;C:\oraclexe\app\oracle\product\11.2.0\server\bin&amp;gt;&lt;br /&gt;C:\oraclexe\app\oracle\product\11.2.0\server\bin\sqlplus.exe barry/barry "@C:\Documents and Settings\bamcgill\Desktop/Untitled1.sql"&lt;br /&gt;&lt;br /&gt;SQL*Plus: Release 11.2.0.2.0 Beta on Mon Nov 14 15:38:25 2011&lt;br /&gt;&lt;br /&gt;Copyright (c) 1982, 2010, Oracle.  All rights reserved.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Connected to:&lt;br /&gt;Oracle Database 11g Express Edition Release 11.2.0.2.0 - Beta&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;USERNAME&lt;br /&gt;------------------------------&lt;br /&gt;BARRY&lt;br /&gt;BARRY2&lt;br /&gt;&lt;br /&gt;SQL&amp;gt; &lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;Now, thats not so secure either, since you can see my password, so we want to switch off banner output too which will suppress the login string and the header. &amp;nbsp;You can do this by editing your external tools and adding it to the arguments like this.&lt;br /&gt;&lt;pre style="background-color: #eeeeee; border: 1px dashed #999999; color: black; font-family: Andale Mono, Lucida Console, Monaco, fixed, monospace; font-size: 12px; line-height: 14px; overflow: auto; padding: 5px; width: 100%;"&gt;&lt;code&gt;-S ${sqldev.dbuser}/${promptl:label=Password} @${file.dir}/${file.name}&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;giving you what you want here.&lt;br /&gt;&lt;pre style="background-color: #eeeeee; border: 1px dashed #999999; color: black; font-family: Andale Mono, Lucida Console, Monaco, fixed, monospace; font-size: 12px; line-height: 14px; overflow: auto; padding: 5px; width: 100%;"&gt;&lt;code&gt;C:\oraclexe\app\oracle\product\11.2.0\server\bin&amp;gt;&lt;br /&gt;C:\oraclexe\app\oracle\product\11.2.0\server\bin\sqlplus.exe -S barry/barry "@C:\Documents and Settings\bamcgill\Desktop/Untitled1.sql"&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;USERNAME&lt;br /&gt;------------------------------&lt;br /&gt;BARRY&lt;br /&gt;BARRY2&lt;br /&gt;&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1555497785494345295-3533562844820272832?l=barrymcgillin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://barrymcgillin.blogspot.com/feeds/3533562844820272832/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1555497785494345295&amp;postID=3533562844820272832' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/3533562844820272832'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/3533562844820272832'/><link rel='alternate' type='text/html' href='http://barrymcgillin.blogspot.com/2011/11/sqlplus-as-external-tool-in.html' title='SQLPLus as an external tool in SQLDeveloper'/><author><name>Barry McGillin</name><uri>http://www.blogger.com/profile/12215907295974180145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='20' src='http://4.bp.blogspot.com/_E2ChyGhl2so/Sa0bpLVUq3I/AAAAAAAAAcg/RvJ-6Z_DvFM/s1600-R/barry.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-WO-RNn2GI5w/TsEy7arLYOI/AAAAAAAABLM/lqszq66hoBE/s72-c/externalplus.PNG' height='72' width='72'/><thr:total>1</thr:total><georss:featurename>15 Drumconnelly Rd, Omagh BT78 1, UK</georss:featurename><georss:point>54.545434460180516 -7.274537086486816</georss:point><georss:box>54.54313196018052 -7.279472586486817 54.547736960180515 -7.269601586486816</georss:box></entry><entry><id>tag:blogger.com,1999:blog-1555497785494345295.post-6180364402179301163</id><published>2011-10-18T06:06:00.000-07:00</published><updated>2011-10-24T15:42:24.696-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='sqlplus'/><category scheme='http://www.blogger.com/atom/ns#' term='SQLDEVELOPER'/><category scheme='http://www.blogger.com/atom/ns#' term='Connections'/><category scheme='http://www.blogger.com/atom/ns#' term='proxy_user'/><category scheme='http://www.blogger.com/atom/ns#' term='worksheet'/><category scheme='http://www.blogger.com/atom/ns#' term='oracle'/><title type='text'>Proxy Connections</title><content type='html'>While looking at some issues with specific connection upgrades, I've been playing with proxy connections in SQL Developer, and while easy to do, can be interesting to get your head around.  There are a number of things to do which are important.  So, Lets start with a proxy user called proxy and a target user called target.  (Nice and original)&lt;br /&gt;&lt;pre style="background-color: #eeeeee; border: 1px dashed #999999; color: black; font-family: Andale Mono, Lucida Console, Monaco, fixed, monospace; font-size: 12px; line-height: 14px; overflow: auto; padding: 5px; width: 100%;"&gt;&lt;code&gt;drop user proxy cascade;&lt;br /&gt;&lt;/code&gt;&lt;span class="Apple-style-span" style="font-family: monospace;"&gt;drop user target cascade;&lt;br /&gt;create user proxy identified by proxy;&lt;br /&gt;create user target identified by target;&lt;br /&gt;alter user target grant connect through proxy;&lt;br /&gt;grant create session to proxy;&lt;br /&gt;grant connect, resource to target;&lt;br /&gt;connect target/target;&lt;br /&gt;create table target (id number);&lt;br /&gt;insert into target values (1);&lt;br /&gt;connect proxy[target]/proxy;&lt;br /&gt;show user&lt;br /&gt;select * from target;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;This set of commands run as Sys in the worksheet will create the two users.  The proxy privilege is granted using&lt;br /&gt;&lt;br /&gt;&lt;pre style="background-color: #eeeeee; border: 1px dashed #999999; color: black; font-family: Andale Mono, Lucida Console, Monaco, fixed, monospace; font-size: 12px; line-height: 14px; overflow: auto; padding: 5px; width: 100%;"&gt;&lt;code&gt;alter user target grant connect through proxy;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;The target user is granted resource role to create a table, in this case, we call it target and put some data in it.  Next, we can connect to the target user, through the proxy using&lt;br /&gt;&lt;br /&gt;&lt;pre style="background-color: #eeeeee; border: 1px dashed #999999; color: black; font-family: Andale Mono, Lucida Console, Monaco, fixed, monospace; font-size: 12px; line-height: 14px; overflow: auto; padding: 5px; width: 100%;"&gt;&lt;code&gt;connect proxy[target]/proxy;select * from target;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;This all gives us this feedback including the user which is actually connected.&lt;br /&gt;&lt;br /&gt;&lt;pre style="background-color: #eeeeee; border: 1px dashed #999999; color: black; font-family: Andale Mono, Lucida Console, Monaco, fixed, monospace; font-size: 12px; line-height: 14px; overflow: auto; padding: 5px; width: 100%;"&gt;&lt;code&gt;user PROXY dropped.user TARGET dropped.user PROXY created.user TARGET created.user TARGET altered.grant succeeded.grant succeeded.Connectedtable TARGET created.1 rows inserted.ConnectedUSER is TARGETID-- 1 Connection created by CONNECT script command disconnected&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;We can also set this up in SQL Developer using the connection dialog.  Given the users have been created as above and the appropriate privileges have been granted, we can set this up in the dialog&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-rk24eGCtX5I/Tp134YzJhxI/AAAAAAAABKc/yh46jTyW7RQ/s1600/proxy.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="167" src="http://1.bp.blogspot.com/-rk24eGCtX5I/Tp134YzJhxI/AAAAAAAABKc/yh46jTyW7RQ/s320/proxy.PNG" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;a href="http://3.bp.blogspot.com/-yAiZzcZZHpM/Tp14W3Na4iI/AAAAAAAABKk/QPopO01r_eg/s1600/proxy_connected.PNG" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/-yAiZzcZZHpM/Tp14W3Na4iI/AAAAAAAABKk/QPopO01r_eg/s1600/proxy_connected.PNG" /&gt;&lt;/a&gt;Once we make the connection, we can expand the table tree and see the target table from the user we proxied into to.    &lt;/div&gt;&lt;a href="http://4.bp.blogspot.com/-p1NYqAbRMvc/Tp140l9r7wI/AAAAAAAABKs/x5_u3Ia5pQY/s1600/proxy_target_data.PNG" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/-p1NYqAbRMvc/Tp140l9r7wI/AAAAAAAABKs/x5_u3Ia5pQY/s1600/proxy_target_data.PNG" /&gt;&lt;/a&gt;&lt;br /&gt;The data is exactly the same as the data from the Worksheet script output as well.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;One thing I did forget to mention was the ability to create distinguished proxies as well.  You do the same thing with the connection panels and but switch to disctinguished name.  You can set up a distinguished user doing the following.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style="background-color: #eeeeee; border: 1px dashed #999999; color: black; font-family: Andale Mono, Lucida Console, Monaco, fixed, monospace; font-size: 12px; line-height: 14px; overflow: auto; padding: 5px; width: 100%;"&gt;&lt;code&gt;&lt;br /&gt;drop user dproxy cascade;&lt;br /&gt;create user dproxy identified globally as 'CD=dproxy,OU=europe,O=oracle,L=omagh,ST=tyrone,C=ie';&lt;br /&gt;alter user dproxy grant connect through barry authenticated using distinguished name;&lt;/code&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1555497785494345295-6180364402179301163?l=barrymcgillin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://barrymcgillin.blogspot.com/feeds/6180364402179301163/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1555497785494345295&amp;postID=6180364402179301163' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/6180364402179301163'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/6180364402179301163'/><link rel='alternate' type='text/html' href='http://barrymcgillin.blogspot.com/2011/10/proxy-connections.html' title='Proxy Connections'/><author><name>Barry McGillin</name><uri>http://www.blogger.com/profile/12215907295974180145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='20' src='http://4.bp.blogspot.com/_E2ChyGhl2so/Sa0bpLVUq3I/AAAAAAAAAcg/RvJ-6Z_DvFM/s1600-R/barry.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/-rk24eGCtX5I/Tp134YzJhxI/AAAAAAAABKc/yh46jTyW7RQ/s72-c/proxy.PNG' height='72' width='72'/><thr:total>0</thr:total><georss:featurename>17 Drumconnelly Rd, Omagh BT78 1, UK</georss:featurename><georss:point>54.5453846734417 -7.274751663208008</georss:point><georss:box>54.543082173441704 -7.279687163208008 54.5476871734417 -7.269816163208008</georss:box></entry><entry><id>tag:blogger.com,1999:blog-1555497785494345295.post-3785653988842486701</id><published>2011-10-11T03:30:00.000-07:00</published><updated>2011-10-11T03:30:22.862-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SQL Developer'/><category scheme='http://www.blogger.com/atom/ns#' term='EA'/><category scheme='http://www.blogger.com/atom/ns#' term='3.1'/><title type='text'>SQL Developer 3.1 EA1 Available</title><content type='html'>&lt;a href="http://www.oracle.com/technetwork/developer-tools/sql-developer/overview/index.html"&gt;SQL Developer&lt;/a&gt; 3.1 EA is now available for download &lt;a href="http://www.oracle.com/technetwork/developer-tools/sql-developer/sqldev-ea-download-486950.html"&gt;here&lt;/a&gt;. &amp;nbsp; Have a look and try out several of the new features introduced as part of this release. &amp;nbsp;We have done a lot of work around adding DBA functionality for RMAN, Datapump and other features and vastly improved Database Diff, Database Copy and Database Export. &lt;br /&gt;In Migration, we've introduced a TeraSQL translator and greatly enhance our Sybase TSQL parse. We've also done a lot of work with insight, including templates for most statements directly from published documentation and added column formatting for SQL*Plus. &amp;nbsp;These are only some of the highlights for this release and we will publish a full list soon.&lt;br /&gt;As usual, you can ask us any questions on the &lt;a href="http://forums.oracle.com/forums/forum.jspa?forumID=260"&gt;forum&lt;/a&gt; or add a &lt;a href="http://sqldeveloper.oracle.com/"&gt;feature request&lt;/a&gt;. &amp;nbsp;Let us know what you think!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1555497785494345295-3785653988842486701?l=barrymcgillin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://barrymcgillin.blogspot.com/feeds/3785653988842486701/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1555497785494345295&amp;postID=3785653988842486701' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/3785653988842486701'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/3785653988842486701'/><link rel='alternate' type='text/html' href='http://barrymcgillin.blogspot.com/2011/10/sql-developer-31-ea1-available.html' title='SQL Developer 3.1 EA1 Available'/><author><name>Barry McGillin</name><uri>http://www.blogger.com/profile/12215907295974180145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='20' src='http://4.bp.blogspot.com/_E2ChyGhl2so/Sa0bpLVUq3I/AAAAAAAAAcg/RvJ-6Z_DvFM/s1600-R/barry.png'/></author><thr:total>1</thr:total><georss:featurename>15 Drumconnelly Rd, Omagh BT78 1, UK</georss:featurename><georss:point>54.545285099781886 -7.274966239929199</georss:point><georss:box>54.54298259978189 -7.279901739929199 54.547587599781885 -7.270030739929199</georss:box></entry><entry><id>tag:blogger.com,1999:blog-1555497785494345295.post-7715810079920242826</id><published>2011-10-05T15:34:00.000-07:00</published><updated>2011-10-05T15:34:14.580-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SQL Developer'/><category scheme='http://www.blogger.com/atom/ns#' term='Instrumentation'/><category scheme='http://www.blogger.com/atom/ns#' term='refactoring'/><category scheme='http://www.blogger.com/atom/ns#' term='Tuning'/><title type='text'>Tuning, Refactoring and Instrumentation</title><content type='html'>For all those who attended the talk today, this is a promise partially fulfilled in that I had said I would post in more detail about the talk. &amp;nbsp;At a high level, we talked about three different topics. &amp;nbsp;Tuning, Refactoring and Instrumentation. &amp;nbsp;I'll list out the main points here today and flesh these out over the next few days for each of the bullet points.&lt;br /&gt;&lt;br /&gt;SQL Developer support several types of tuning activities. &amp;nbsp;These are:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Explain Plan/ Autotrace and Diff&lt;/li&gt;&lt;li&gt;Monitoring SQL&lt;/li&gt;&lt;li&gt;SQL Tuning Advisor&lt;/li&gt;&lt;li&gt;PLSQL Hierarchical Profiler&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;For&amp;nbsp;Refactoring, there are several options as well, and these grow with every release.&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;Code Surrounding&lt;/li&gt;&lt;li&gt;Procedure extraction&lt;/li&gt;&lt;li&gt;Local variable renaming&lt;/li&gt;&lt;li&gt;Obfuscation&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;Instrumentation is a way of finding out&amp;nbsp;what an application is doing, who is using it, how its doing and and how long it has taken. &amp;nbsp;In order to look at this from a database&amp;nbsp;application&amp;nbsp;point of view, we can break application&amp;nbsp;instrumentation&amp;nbsp;into a number of key areas.&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;Debugging&lt;/li&gt;&lt;li&gt;Logging&lt;/li&gt;&lt;li&gt;Runtime registration&lt;/li&gt;&lt;li&gt;Metric&amp;nbsp;Collection&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;Each of these key areas have specific tools and processes which should be implemented as part of your application development and we will get into those in the section on Instrumentation.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1555497785494345295-7715810079920242826?l=barrymcgillin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://barrymcgillin.blogspot.com/feeds/7715810079920242826/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1555497785494345295&amp;postID=7715810079920242826' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/7715810079920242826'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/7715810079920242826'/><link rel='alternate' type='text/html' href='http://barrymcgillin.blogspot.com/2011/10/tuning-refactoring-and-instrumentation.html' title='Tuning, Refactoring and Instrumentation'/><author><name>Barry McGillin</name><uri>http://www.blogger.com/profile/12215907295974180145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='20' src='http://4.bp.blogspot.com/_E2ChyGhl2so/Sa0bpLVUq3I/AAAAAAAAAcg/RvJ-6Z_DvFM/s1600-R/barry.png'/></author><thr:total>0</thr:total><georss:featurename>Moscone Center, 747 Howard St, San Francisco, CA 94103-3118, USA</georss:featurename><georss:point>37.783986 -122.40131</georss:point><georss:box>37.7714365 -122.42105099999999 37.7965355 -122.381569</georss:box></entry><entry><id>tag:blogger.com,1999:blog-1555497785494345295.post-6542244594917849826</id><published>2011-09-12T10:17:00.000-07:00</published><updated>2011-09-12T10:17:53.824-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Data pump'/><category scheme='http://www.blogger.com/atom/ns#' term='SQL Developer'/><category scheme='http://www.blogger.com/atom/ns#' term='11g'/><category scheme='http://www.blogger.com/atom/ns#' term='import'/><category scheme='http://www.blogger.com/atom/ns#' term='oracle'/><title type='text'>SQL Developer Data Pump Support - Part 2</title><content type='html'>Welcome to part 2 of this feature on our introduction of data pump functionality into &lt;a href="http://www.oracle.com/technetwork/developer-tools/sql-developer/overview/index.html"&gt;SQL Developer&lt;/a&gt;. &amp;nbsp;&lt;a href="http://barrymcgillin.blogspot.com/2011/09/sql-developer-data-pump-support-part-1.html"&gt;Previously&lt;/a&gt;, we walked through exporting from the database. &amp;nbsp;This post will go through the importing the data export to a new schema in our database.&lt;br /&gt;In the DBA navigator, go to the data pump node, and choose 'Data Pump Import Wizard'.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-33gl44HnA5M/Tm42jaKf2kI/AAAAAAAABJk/dL4xDo6RheQ/s1600/import_menu.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/-33gl44HnA5M/Tm42jaKf2kI/AAAAAAAABJk/dL4xDo6RheQ/s1600/import_menu.PNG" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;When the wizard appears, choose the type of import you want. &amp;nbsp; In our previous episode, we exported the 'BARRY' Schema. &amp;nbsp;We'll now choose to do a schema import.&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-dJ92_mSyOu8/Tm42kBU43wI/AAAAAAAABJo/e90lNgu7Udc/s1600/import_wizard1.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="240" src="http://4.bp.blogspot.com/-dJ92_mSyOu8/Tm42kBU43wI/AAAAAAAABJo/e90lNgu7Udc/s320/import_wizard1.PNG" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;For the input directories, choose a directory that exists and you have access to. &amp;nbsp;The dump files from the export session need to reside on this directory and conform to the filename as specified.&lt;br /&gt;Hitting next, will parse the files and step 2 shows us the available schema to choose from. &amp;nbsp;Since we only export 'BARRY', we only have one to choose from in this case.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-CqH3jirJOF4/Tm42lGewcBI/AAAAAAAABJs/jMPnDj6MwI8/s1600/import_wizard2.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="240" src="http://2.bp.blogspot.com/-CqH3jirJOF4/Tm42lGewcBI/AAAAAAAABJs/jMPnDj6MwI8/s320/import_wizard2.PNG" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;Step 3 involves remapping. &amp;nbsp;In this case, on my database, the Barry schema exists. &amp;nbsp;I need to create another schema to create these objects in. &amp;nbsp;I've done this already before we started the wizard.&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-UcEnFuQbSYo/Tm47eOOlCJI/AAAAAAAABJ8/WaNXBbSzMV4/s1600/create+new+schema.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="171" src="http://4.bp.blogspot.com/-UcEnFuQbSYo/Tm47eOOlCJI/AAAAAAAABJ8/WaNXBbSzMV4/s320/create+new+schema.PNG" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;Once the schema has been created and we're back in the wizard, we can set the destination as 'BARRY2'&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;a href="http://2.bp.blogspot.com/-EwOdYf0Qr3w/Tm42l0L_7uI/AAAAAAAABJw/9U-puPuMpr4/s1600/import_wizard3.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="240" src="http://2.bp.blogspot.com/-EwOdYf0Qr3w/Tm42l0L_7uI/AAAAAAAABJw/9U-puPuMpr4/s320/import_wizard3.PNG" width="320" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;Step 4 has two parts, one is for logging and we choose an appropriate database directory for that which exists and we have access to. &amp;nbsp;The second is for the actions on tables if they exist. &amp;nbsp;In my case, I want to replace them. &amp;nbsp;For this example, we know its a fresh schema with nothing in it, but if it did, we'd be replacing the tables.&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;a href="http://2.bp.blogspot.com/-fPQvFG96BuU/Tm42mkYfmSI/AAAAAAAABJ0/tQJZ7tLfkeI/s1600/import_wizard4.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="240" src="http://2.bp.blogspot.com/-fPQvFG96BuU/Tm42mkYfmSI/AAAAAAAABJ0/tQJZ7tLfkeI/s320/import_wizard4.PNG" width="320" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;Lastly, we can schedule the import, and like last time, I want to do this immediately.&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;a href="http://1.bp.blogspot.com/-PAOKoYXbMsw/Tm42nna_CfI/AAAAAAAABJ4/NrEb6bpGIzc/s1600/import_wizard5.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="240" src="http://1.bp.blogspot.com/-PAOKoYXbMsw/Tm42nna_CfI/AAAAAAAABJ4/NrEb6bpGIzc/s320/import_wizard5.PNG" width="320" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;The summary shows us what will be done on our behalf and once we hit the finish button, an import job will be created and kicked off&amp;nbsp;immediately.&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;a href="http://4.bp.blogspot.com/-g6v0X002S2w/Tm42ihHVZ9I/AAAAAAAABJg/PzICWzfb7fs/s1600/import_wizard6.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="240" src="http://4.bp.blogspot.com/-g6v0X002S2w/Tm42ihHVZ9I/AAAAAAAABJg/PzICWzfb7fs/s320/import_wizard6.PNG" width="320" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;When the job starts, there will be an import job shown in the dba navigator. &amp;nbsp;its corresponding editor will show the job executing.&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-Vov5EygxssE/Tm481vZzsJI/AAAAAAAABKM/NV25N7ElmUE/s1600/import_status.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/-Vov5EygxssE/Tm481vZzsJI/AAAAAAAABKM/NV25N7ElmUE/s1600/import_status.PNG" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-6BTnVOYMnLM/Tm481EDmdrI/AAAAAAAABKI/awY6_NcBPmk/s1600/import_status2.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="182" src="http://1.bp.blogspot.com/-6BTnVOYMnLM/Tm481EDmdrI/AAAAAAAABKI/awY6_NcBPmk/s320/import_status2.PNG" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;Finally, we can create a connection for the BARRY2 schema and look at the data.&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;a href="http://2.bp.blogspot.com/-VK2kSDPaBWE/Tm480WUsvSI/AAAAAAAABKE/ZR4hiSCP1KA/s1600/new_barry2_conn.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="166" src="http://2.bp.blogspot.com/-VK2kSDPaBWE/Tm480WUsvSI/AAAAAAAABKE/ZR4hiSCP1KA/s320/new_barry2_conn.PNG" width="320" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-1975BqDHD9c/Tm48zbXdFcI/AAAAAAAABKA/vYv14F2tOUs/s1600/imported_tables.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="85" src="http://2.bp.blogspot.com/-1975BqDHD9c/Tm48zbXdFcI/AAAAAAAABKA/vYv14F2tOUs/s320/imported_tables.PNG" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&amp;nbsp;So, that's it in a nutshell. &amp;nbsp;Over two parts, we've shown you how to export any part of a database to file using the data pump utilities which have been integrated into &lt;a href="http://www.oracle.com/technetwork/developer-tools/sql-developer/overview/index.html"&gt;Oracle SQL Developer&lt;/a&gt;. &amp;nbsp;In this part, we took those files from the previous post and imported them into Oracle.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1555497785494345295-6542244594917849826?l=barrymcgillin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://barrymcgillin.blogspot.com/feeds/6542244594917849826/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1555497785494345295&amp;postID=6542244594917849826' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/6542244594917849826'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/6542244594917849826'/><link rel='alternate' type='text/html' href='http://barrymcgillin.blogspot.com/2011/09/sql-developer-data-pump-support-part-2.html' title='SQL Developer Data Pump Support - Part 2'/><author><name>Barry McGillin</name><uri>http://www.blogger.com/profile/12215907295974180145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='20' src='http://4.bp.blogspot.com/_E2ChyGhl2so/Sa0bpLVUq3I/AAAAAAAAAcg/RvJ-6Z_DvFM/s1600-R/barry.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/-33gl44HnA5M/Tm42jaKf2kI/AAAAAAAABJk/dL4xDo6RheQ/s72-c/import_menu.PNG' height='72' width='72'/><thr:total>1</thr:total><georss:featurename>15 Drumconnelly Rd, Omagh BT78 1, UK</georss:featurename><georss:point>54.545359780049544 -7.275094985961914</georss:point><georss:box>54.543057280049545 -7.280030485961914 54.54766228004954 -7.270159485961914</georss:box></entry><entry><id>tag:blogger.com,1999:blog-1555497785494345295.post-6411689491145021879</id><published>2011-09-12T09:20:00.000-07:00</published><updated>2011-09-12T09:22:44.502-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Data pump'/><category scheme='http://www.blogger.com/atom/ns#' term='SQL Developer'/><category scheme='http://www.blogger.com/atom/ns#' term='Oracle XE'/><category scheme='http://www.blogger.com/atom/ns#' term='11g'/><category scheme='http://www.blogger.com/atom/ns#' term='DBA'/><category scheme='http://www.blogger.com/atom/ns#' term='export'/><category scheme='http://www.blogger.com/atom/ns#' term='oracle'/><title type='text'>SQL Developer Data Pump Support - Part 1</title><content type='html'>&lt;div class="separator" style="clear: both; text-align: justify;"&gt;In 3.1 we're adding support for Data Pump, which has replaced exp and imp. &amp;nbsp;In SQL Developer, we've added this in the DBA navigator which has support for several new things this release. &amp;nbsp;In this post, I'm only going through Data Pump export and in part 2 of this post, we'll visit the import. &amp;nbsp;We'll &amp;nbsp;revisit several of other new DBA features in the very near future. &amp;nbsp;For export, the demonstration will show that this is pretty easy to use, however, get a cup of coffee, cos we've a few snapshots to go through!&amp;nbsp;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;Ok, so first off, we need to fire up the DBA Navigator which can be reached from the view menu. &amp;nbsp;Select DBA and you get the navigator shown on the right. This image shows the sys user which has been selected as the current connection. &amp;nbsp;We're going to use the barry&amp;nbsp;connection&amp;nbsp;for using data pump today.&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-tBeP_yjMG9U/Tm4ebzfrDhI/AAAAAAAABJI/5JPs67zlE8o/s1600/menu.PNG" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/-tBeP_yjMG9U/Tm4ebzfrDhI/AAAAAAAABJI/5JPs67zlE8o/s1600/menu.PNG" /&gt;&lt;/a&gt;&lt;a href="http://2.bp.blogspot.com/-SwIP3tFx518/Tm4eQxL8UAI/AAAAAAAABHk/QZ9Pd0KPJdU/s1600/dbawindow.PNG" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/-SwIP3tFx518/Tm4eQxL8UAI/AAAAAAAABHk/QZ9Pd0KPJdU/s1600/dbawindow.PNG" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;a href="http://3.bp.blogspot.com/-C1GDilPl84A/Tm4eRhgp9FI/AAAAAAAABHs/-ZVpsjsO2i4/s1600/dpexportmenu.PNG" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/-C1GDilPl84A/Tm4eRhgp9FI/AAAAAAAABHs/-ZVpsjsO2i4/s1600/dpexportmenu.PNG" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;br /&gt;&lt;br /&gt;From the data pump node, select the menu item for the Data Pump Export Wizard. &amp;nbsp;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-rLkIi8iJdJs/Tm4i8QqPELI/AAAAAAAABJc/AtJNkRwdAek/s1600/dpwiz1.PNG" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" height="240" src="http://4.bp.blogspot.com/-rLkIi8iJdJs/Tm4i8QqPELI/AAAAAAAABJc/AtJNkRwdAek/s320/dpwiz1.PNG" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: left;"&gt;On the first page of this wizard, we are choosing schema today. &amp;nbsp;You also have the option of exporting the entire database, some tablespaces or a block of tables. &amp;nbsp;When you're ready press next&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;a href="http://1.bp.blogspot.com/-zhq_Q7qW_oI/Tm4eScQpy8I/AAAAAAAABH0/l9l_jYKNihs/s1600/dpwiz2.PNG" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="240" src="http://1.bp.blogspot.com/-zhq_Q7qW_oI/Tm4eScQpy8I/AAAAAAAABH0/l9l_jYKNihs/s320/dpwiz2.PNG" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;As we said earlier, we are only choosing schema today and in the image below, we are only selecting one schema for export. The 'BARRY' schema.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;a href="http://3.bp.blogspot.com/-NtJo_T9Bq6M/Tm4eSwcwyeI/AAAAAAAABH4/KTXiKZ50X3U/s1600/dpwiz3.PNG" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" height="240" src="http://3.bp.blogspot.com/-NtJo_T9Bq6M/Tm4eSwcwyeI/AAAAAAAABH4/KTXiKZ50X3U/s320/dpwiz3.PNG" style="cursor: move;" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;Step 3 allows you to filter what is exported by including or excluding various things, you can choose none of these things or, a &amp;nbsp;selection of each with an appropriate filter string in the value field.&lt;br /&gt;We won't add any today and let it take everything out of the schema.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;a href="http://3.bp.blogspot.com/-3Mreg8Fitus/Tm4eTbBuA2I/AAAAAAAABH8/mxbf4ebQPmk/s1600/dpwiz4.PNG" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="240" src="http://3.bp.blogspot.com/-3Mreg8Fitus/Tm4eTbBuA2I/AAAAAAAABH8/mxbf4ebQPmk/s320/dpwiz4.PNG" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;In Step 4, the data tab, we can add data filters to all the tables, or individual tables as required. &amp;nbsp;Again for this demonstration, I'm not going to choose any of that and let the data pump export everything.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;a href="http://2.bp.blogspot.com/-7J2CxWjl3uA/Tm4eTpfqchI/AAAAAAAABIA/crykJ2iPaCQ/s1600/dpwiz5.PNG" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" height="240" src="http://2.bp.blogspot.com/-7J2CxWjl3uA/Tm4eTpfqchI/AAAAAAAABIA/crykJ2iPaCQ/s320/dpwiz5.PNG" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Step 5 allows us to specify the options for the export. &amp;nbsp;Our primary interest is in the directory for the &amp;nbsp;logging.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-Baqn80Ninq4/Tm4eUGAG7zI/AAAAAAAABIE/8B0yVauPfzs/s1600/dpwiz6.PNG" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="240" src="http://1.bp.blogspot.com/-Baqn80Ninq4/Tm4eUGAG7zI/AAAAAAAABIE/8B0yVauPfzs/s320/dpwiz6.PNG" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Step 6 focuses on our Output directory. &amp;nbsp;Specify the one you want to use here. &amp;nbsp;Remember, as in Step 5, this directory must exist, and you must have the privileges to write to it from your user. &amp;nbsp;Check on the main connections navigator for directories. &amp;nbsp;By default there is a DATA_PUMP_DIR setup, but make sure that the directory exists. &amp;nbsp;We've created a directory called 'BARRYS_DPUMP_DIR' for this example.&lt;br /&gt;&lt;div class="" style="clear: both; text-align: left;"&gt;&lt;a href="http://2.bp.blogspot.com/-wtj4CyV-jlw/Tm4eUh9IuNI/AAAAAAAABII/WL4vdU9evWE/s1600/dpwiz7.PNG" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" height="240" src="http://2.bp.blogspot.com/-wtj4CyV-jlw/Tm4eUh9IuNI/AAAAAAAABII/WL4vdU9evWE/s320/dpwiz7.PNG" width="320" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Step 7 specifies the schedule which will dump the data for you. &amp;nbsp;We're choosing immediately as our option. You can specify whenever you like for this job to run, repeatedly if required.&lt;/div&gt;&lt;div class="" style="clear: both; text-align: left;"&gt;&lt;a href="http://1.bp.blogspot.com/-3YhVNXpU6xg/Tm4eVJqHHnI/AAAAAAAABIM/Qes1xzk5O3E/s1600/dpwiz8.PNG" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="240" src="http://1.bp.blogspot.com/-3YhVNXpU6xg/Tm4eVJqHHnI/AAAAAAAABIM/Qes1xzk5O3E/s320/dpwiz8.PNG" width="320" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Lastly, we have the summary screen, which is split in two parts. The main summary screen shows what actions you are taking and how they will be carried out. &amp;nbsp;The second panel shows the actual PL/SQL which will be run on your behalf to create the data pump job, and dump the data.&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-KBPZQZfMMEo/Tm4eVoRJE3I/AAAAAAAABIQ/dDcpHf9CbOQ/s1600/dpwiz9.PNG" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="240" src="http://4.bp.blogspot.com/-KBPZQZfMMEo/Tm4eVoRJE3I/AAAAAAAABIQ/dDcpHf9CbOQ/s320/dpwiz9.PNG" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="" style="clear: both; text-align: left;"&gt;When you click finish, and job submission is successful, you'll get &amp;nbsp;a new job listed in the DBA navigator under Data Pump export Jobs.&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-Veyj-K-y5uQ/Tm4ebqii8KI/AAAAAAAABJE/Jw7ZJ8joExw/s1600/job_status2.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="193" src="http://1.bp.blogspot.com/-Veyj-K-y5uQ/Tm4ebqii8KI/AAAAAAAABJE/Jw7ZJ8joExw/s320/job_status2.PNG" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;a href="http://1.bp.blogspot.com/-wIAIRjEERqw/Tm4ebNNvUVI/AAAAAAAABJA/mdnb3ciE9bI/s1600/job_status1.PNG" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;br /&gt;&lt;/a&gt;&lt;a href="http://1.bp.blogspot.com/-wIAIRjEERqw/Tm4ebNNvUVI/AAAAAAAABJA/mdnb3ciE9bI/s1600/job_status1.PNG" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;br /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div style="margin-left: 1em; margin-right: 1em; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-wIAIRjEERqw/Tm4ebNNvUVI/AAAAAAAABJA/mdnb3ciE9bI/s1600/job_status1.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;span class="Apple-style-span" style="-webkit-text-decorations-in-effect: none; color: black;"&gt;&lt;/span&gt;&lt;/a&gt;&lt;a href="http://1.bp.blogspot.com/-wIAIRjEERqw/Tm4ebNNvUVI/AAAAAAAABJA/mdnb3ciE9bI/s1600/job_status1.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/-wIAIRjEERqw/Tm4ebNNvUVI/AAAAAAAABJA/mdnb3ciE9bI/s1600/job_status1.PNG" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;a href="http://1.bp.blogspot.com/-wIAIRjEERqw/Tm4ebNNvUVI/AAAAAAAABJA/mdnb3ciE9bI/s1600/job_status1.PNG" imageanchor="1"&gt;&lt;span class="Apple-style-span" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;span class="Apple-style-span" style="-webkit-text-decorations-in-effect: none; color: black;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;If it doesn't appear, then it's highly likely you'll get this error,&amp;nbsp;primarily&amp;nbsp;due to the&amp;nbsp;directory&amp;nbsp;that you are writing the files or the logs to. &amp;nbsp;This is easily fixed by going back and making sure the&amp;nbsp;directories&amp;nbsp;you have chosen, exist and that you have access to read from and write to them.&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-McXNJGl7Lpg/Tm4eRXzi86I/AAAAAAAABHo/ccPSRbowPHg/s1600/dp_dir_error.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="175" src="http://1.bp.blogspot.com/-McXNJGl7Lpg/Tm4eRXzi86I/AAAAAAAABHo/ccPSRbowPHg/s320/dp_dir_error.PNG" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&amp;nbsp;Lastly, you can go to your database directory and see your exported file, together with the log file.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-bmwn9pfd4aA/Tm4eSEeit4I/AAAAAAAABHw/iOIrkXnHwr8/s1600/dpwiz1.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/-bmwn9pfd4aA/Tm4eSEeit4I/AAAAAAAABHw/iOIrkXnHwr8/s1600/dpwiz1.PNG" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-_hOQ1WzTZ-A/Tm4ea8eyX8I/AAAAAAAABI8/0T9eDuv7D1A/s1600/job_done.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="142" src="http://2.bp.blogspot.com/-_hOQ1WzTZ-A/Tm4ea8eyX8I/AAAAAAAABI8/0T9eDuv7D1A/s320/job_done.PNG" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;Your log file will contain something like this if you're successful. (I've cut a lot out of it as it is long)&lt;br /&gt;&lt;br /&gt;&lt;pre style="background-color: #eeeeee; border: 1px dashed #999999; color: black; font-family: Andale Mono, Lucida Console, Monaco, fixed, monospace; font-size: 12px; line-height: 14px; overflow: auto; padding: 5px; width: 100%;"&gt;&lt;code&gt;Starting "BARRY"."EXPORT_JOB_SQLDEV_327":  &lt;br /&gt;Estimate in progress using BLOCKS method...&lt;br /&gt;Processing object type SCHEMA_EXPORT/TABLE/TABLE_DATA&lt;br /&gt;.  estimated "BARRY"."MD_ADDITIONAL_PROPERTIES"              3 MB&lt;br /&gt;.  estimated "BARRY"."STAGE_TERADATA_TABLETEXT"          2.062 MB&lt;br /&gt;.  estimated "BARRY"."MD_DERIVATIVES"                        2 MB&lt;br /&gt;.  estimated "BARRY"."MD_FILE_ARTIFACTS"                     2 MB&lt;br /&gt;...&lt;br /&gt;.  estimated "BARRY"."文化大革命"                                 0 KB&lt;br /&gt;Total estimation using BLOCKS method: 17.75 MB&lt;br /&gt;Processing object type SCHEMA_EXPORT/USER&lt;br /&gt;Processing object type SCHEMA_EXPORT/SYSTEM_GRANT&lt;br /&gt;.....&lt;br /&gt;Processing object type SCHEMA_EXPORT/TABLE/INDEX/STATISTICS/FUNCTIONAL_AND_BITMAP/INDEX_STATISTICS&lt;br /&gt;Processing object type SCHEMA_EXPORT/TABLE/STATISTICS/TABLE_STATISTICS&lt;br /&gt;. . exported "BARRY"."MD_ADDITIONAL_PROPERTIES"          13.54 KB      59 rows&lt;br /&gt;. . exported "BARRY"."STAGE_TERADATA_TABLETEXT"          1.197 MB      25 rows&lt;br /&gt;. . exported "BARRY"."MD_DERIVATIVES"                    49.60 KB     386 rows&lt;br /&gt;...&lt;br /&gt;. . exported "BARRY"."文化大革命"                                 0 KB       0 rows&lt;br /&gt;Master table "BARRY"."EXPORT_JOB_SQLDEV_327" successfully loaded/unloaded&lt;br /&gt;******************************************************************************&lt;br /&gt;Dump file set for BARRY.EXPORT_JOB_SQLDEV_327 is:&lt;br /&gt;  D:\DEMO\DPUMP\EXPDAT01.DMP&lt;br /&gt;Job "BARRY"."EXPORT_JOB_SQLDEV_327" successfully completed at 15:42:52&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;So, for today, thats exporting from the Oracle database using the Datapump built into Oracle SQL Developer 3.1 which will be available soon! &amp;nbsp;We'll have part 2 on importing this dump file next.&lt;br /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1555497785494345295-6411689491145021879?l=barrymcgillin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://barrymcgillin.blogspot.com/feeds/6411689491145021879/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1555497785494345295&amp;postID=6411689491145021879' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/6411689491145021879'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/6411689491145021879'/><link rel='alternate' type='text/html' href='http://barrymcgillin.blogspot.com/2011/09/sql-developer-data-pump-support-part-1.html' title='SQL Developer Data Pump Support - Part 1'/><author><name>Barry McGillin</name><uri>http://www.blogger.com/profile/12215907295974180145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='20' src='http://4.bp.blogspot.com/_E2ChyGhl2so/Sa0bpLVUq3I/AAAAAAAAAcg/RvJ-6Z_DvFM/s1600-R/barry.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/-tBeP_yjMG9U/Tm4ebzfrDhI/AAAAAAAABJI/5JPs67zlE8o/s72-c/menu.PNG' height='72' width='72'/><thr:total>1</thr:total><georss:featurename>15 Drumconnelly Rd, Omagh BT78 1, UK</georss:featurename><georss:point>54.54540956681871 -7.274580001831055</georss:point><georss:box>54.54310706681871 -7.279515501831055 54.54771206681871 -7.2696445018310545</georss:box></entry><entry><id>tag:blogger.com,1999:blog-1555497785494345295.post-580076254518761914</id><published>2011-09-07T07:48:00.000-07:00</published><updated>2011-09-13T06:51:51.620-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='formatting'/><category scheme='http://www.blogger.com/atom/ns#' term='SQL Developer'/><category scheme='http://www.blogger.com/atom/ns#' term='Oracle XE'/><category scheme='http://www.blogger.com/atom/ns#' term='worksheet'/><category scheme='http://www.blogger.com/atom/ns#' term='SQL*Plus'/><category scheme='http://www.blogger.com/atom/ns#' term='reports'/><title type='text'>SQL*Plus Formatting Commands</title><content type='html'>&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;Since the last post on SQL*Plus commands was completed, we have also added more functionality to the SQL Developer's SQL*Plus support. &amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;&amp;nbsp;&amp;nbsp;Specifically, we've added some formatting reports to help the folks who have tons of plus reports running for various things.  These features will be a part of the next major release of SQL Developer.  Lets have a look and see whats supported. &lt;/span&gt;&lt;br /&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;It might be easier to tell you whats not supported now.  Its 'break' and 'sum'.  Most other SQLPlus formatting is now supported.  So, lets take a look and see how it looks.&lt;/span&gt;&lt;br /&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;These features will be available in the next release of SQL Developer.&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;In SQL Developer, as you add SQL*plus command, they stay around for the lifetime of your worksheet, just like SQL*Plus unless you get rid of them.  To Clear all your column formatting  just use&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;pre style="background-color: #eeeeee; border: 1px dashed #999999; color: black; font-family: Andale Mono, Lucida Console, Monaco, fixed, monospace; font-size: 12px; line-height: 14px; overflow: auto; padding: 5px; width: 100%;"&gt;&lt;code&gt;clear columns&lt;/code&gt;&lt;/pre&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;Now we've a clean setup and ready to start. &amp;nbsp;As usual, if you want to see what settings are in force, you can issue the command:&lt;/span&gt;&lt;/div&gt;&lt;pre style="background-color: #eeeeee; border: 1px dashed #999999; color: black; font-family: Andale Mono, Lucida Console, Monaco, fixed, monospace; font-size: 12px; line-height: 14px; overflow: auto; padding: 5px; width: 100%;"&gt;&lt;code&gt;show all&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;which will give you the usual list of suspects as you have seen before &lt;a href="http://barrymcgillin.blogspot.com/2011/07/sqlplus-commands.html"&gt;here&lt;/a&gt;. &amp;nbsp;With formatting now, there are a few more. &amp;nbsp;We'll see those shortly when we do a little bit of formatting. &amp;nbsp;Using the standard HR schema in XE, a simple query on the employees table&lt;/span&gt;&lt;br /&gt;&lt;pre style="background-color: #eeeeee; border: 1px dashed #999999; color: black; font-family: Andale Mono, Lucida Console, Monaco, fixed, monospace; font-size: 12px; line-height: 14px; overflow: auto; padding: 5px; width: 100%;"&gt;&lt;code&gt;select * from employees where rownum &amp;lt; 5;&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;gives us this&lt;/span&gt;&lt;br /&gt;&lt;pre style="background-color: #eeeeee; border: 1px dashed #999999; color: black; font-family: Andale Mono, Lucida Console, Monaco, fixed, monospace; font-size: 12px; line-height: 14px; overflow: auto; padding: 5px; width: 100%;"&gt;&lt;code&gt;EMPLOYEE_ID FIRST_NAME           LAST_NAME                 EMAIL                     PHONE_NUMBER         HIRE_DATE                JOB_ID         SALARY COMMISSION_PCT MANAGER_ID DEPARTMENT_ID&lt;br /&gt;----------- -------------------- ------------------------- ------------------------- -------------------- ------------------------ ---------- ---------- -------------- ---------- -------------&lt;br /&gt;        100 Steven               King                      SKING                     515.123.4567         17-JUN-03                AD_PRES         24000                                      90 &lt;br /&gt;        101 Neena                Kochhar                   NKOCHHAR                  515.123.4568         21-SEP-05                AD_VP           17000                       100            90 &lt;br /&gt;        102 Lex                  De Haan                   LDEHAAN                   515.123.4569         13-JAN-01                AD_VP           17000                       100            90 &lt;br /&gt;        103 Alexander            Hunold                    AHUNOLD                   590.423.4567         03-JAN-06                IT_PROG          9000                       102            60 &lt;br /&gt;&lt;br /&gt; 4 rows selected &lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;Lovely, right? &amp;nbsp;Of course, but we could do better. &amp;nbsp;So, lets remove the columns we're not interested in using the column noprint option.&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;pre style="background-color: #eeeeee; border: 1px dashed #999999; color: black; font-family: Andale Mono, Lucida Console, Monaco, fixed, monospace; font-size: 12px; line-height: 14px; overflow: auto; padding: 5px; width: 100%;"&gt;&lt;code&gt;column employee_id noprint&lt;br /&gt;column job_id noprint&lt;br /&gt;column commission_pct noprint&lt;br /&gt;column manager_id noprint&lt;br /&gt;column department_id noprint&lt;br /&gt;select * from employees where rownum &amp;lt; 5;&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;which now gives us this.&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;pre style="background-color: #eeeeee; border: 1px dashed #999999; color: black; font-family: Andale Mono, Lucida Console, Monaco, fixed, monospace; font-size: 12px; line-height: 14px; overflow: auto; padding: 5px; width: 100%;"&gt;&lt;code&gt;FIRST_NAME           LAST_NAME                 EMAIL                     PHONE_NUMBER         HIRE_DATE                    SALARY &lt;br /&gt;-------------------- ------------------------- ------------------------- -------------------- ------------------------ ---------- &lt;br /&gt;Steven               King                      SKING                     515.123.4567         17-JUN-03                     24000 &lt;br /&gt;Neena                Kochhar                   NKOCHHAR                  515.123.4568         21-SEP-05                     17000 &lt;br /&gt;Lex                  De Haan                   LDEHAAN                   515.123.4569         13-JAN-01                     17000 &lt;br /&gt;Alexander            Hunold                    AHUNOLD                   590.423.4567         03-JAN-06                      9000 &lt;br /&gt;&lt;br /&gt; 4 rows selected &lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;Ok, its looking better, but theres a lot of white space in there. &amp;nbsp;Lets take that out.&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;pre style="background-color: #eeeeee; border: 1px dashed #999999; color: black; font-family: Andale Mono, Lucida Console, Monaco, fixed, monospace; font-size: 12px; line-height: 14px; overflow: auto; padding: 5px; width: 100%;"&gt;&lt;code&gt;column employee_id noprint&lt;br /&gt;column job_id noprint&lt;br /&gt;column commission_pct noprint&lt;br /&gt;column manager_id noprint&lt;br /&gt;column department_id noprint&lt;br /&gt;column first_name format a10 &lt;br /&gt;column last_name format a7 &lt;br /&gt;column email format a8 &lt;br /&gt;column hire_date format a10 &lt;br /&gt;select * from employees where rownum &amp;lt; 5;&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;which now looks a lot tidier.&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;pre style="background-color: #eeeeee; border: 1px dashed #999999; color: black; font-family: Andale Mono, Lucida Console, Monaco, fixed, monospace; font-size: 12px; line-height: 14px; overflow: auto; padding: 5px; width: 100%;"&gt;&lt;code&gt;FIRST_NAME LAST_NA EMAIL    PHONE_NUMBER         HIRE_DATE      SALARY &lt;br /&gt;---------- ------- -------- -------------------- ---------- ---------- &lt;br /&gt;Steven     King    SKING    515.123.4567         17-JUN-03       24000 &lt;br /&gt;Neena      Kochhar NKOCHHAR 515.123.4568         21-SEP-05       17000 &lt;br /&gt;Lex        De Haan LDEHAAN  515.123.4569         13-JAN-01       17000 &lt;br /&gt;Alexander  Hunold  AHUNOLD  590.423.4567         03-JAN-06        9000 &lt;br /&gt;&lt;br /&gt; 4 rows selected &lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;Now, this fits nicely in to the page and we can also make the separators and titles a little fancier&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;pre style="background-color: #eeeeee; border: 1px dashed #999999; color: black; font-family: Andale Mono, Lucida Console, Monaco, fixed, monospace; font-size: 12px; line-height: 14px; overflow: auto; padding: 5px; width: 100%;"&gt;&lt;code&gt;&lt;br /&gt;clear columns&lt;br /&gt;set colsep "|"&lt;br /&gt;column employee_id noprint&lt;br /&gt;column job_id noprint&lt;br /&gt;column commission_pct noprint&lt;br /&gt;column manager_id noprint&lt;br /&gt;column department_id noprint&lt;br /&gt;column first_name format a10 heading "First|Name"&lt;br /&gt;column last_name format a7 heading "Last|Name"&lt;br /&gt;column email format a8 heading "Email"&lt;br /&gt;column hire_date format a10 heading "Hired"&lt;br /&gt;column phone_number format a12 heading "Phone"&lt;br /&gt;column salary format $999,999 heading "Salary"&lt;br /&gt;select * from employees where rownum &amp;lt; 5;&lt;br /&gt;&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;resulting in this&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;pre style="background-color: #eeeeee; border: 1px dashed #999999; color: black; font-family: Andale Mono, Lucida Console, Monaco, fixed, monospace; font-size: 12px; line-height: 14px; overflow: auto; padding: 5px; width: 100%;"&gt;&lt;code&gt;&lt;br /&gt;First     |Last   |        |            |          |             &lt;br /&gt;Name      |Name   |Email   |Phone       |Hired     |    Salary &lt;br /&gt;---------- ------- -------- ------------ ---------- ---------- &lt;br /&gt;Steven    |King   |SKING   |515.123.4567|17-JUN-03 |   $24,000&lt;br /&gt;Neena     |Kochhar|NKOCHHAR|515.123.4568|21-SEP-05 |   $17,000&lt;br /&gt;Lex       |De Haan|LDEHAAN |515.123.4569|13-JAN-01 |   $17,000&lt;br /&gt;Alexander |Hunold |AHUNOLD |590.423.4567|03-JAN-06 |    $9,000&lt;br /&gt;&lt;br /&gt; 4 rows selected &lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;which spruces it up a bit. &amp;nbsp;Now, we can add titles top and bottom using standard SQL*Plus syntax too&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;pre style="background-color: #eeeeee; border: 1px dashed #999999; color: black; font-family: Andale Mono, Lucida Console, Monaco, fixed, monospace; font-size: 12px; line-height: 14px; overflow: auto; padding: 5px; width: 100%;"&gt;&lt;code&gt;&lt;br /&gt;clear columns&lt;br /&gt;CLEAR screen&lt;br /&gt;&lt;br /&gt;set colsep "|"&lt;br /&gt;column employee_id noprint&lt;br /&gt;column job_id noprint&lt;br /&gt;column commission_pct noprint&lt;br /&gt;column manager_id noprint&lt;br /&gt;column department_id noprint&lt;br /&gt;column first_name format a10 heading "First|Name"&lt;br /&gt;column last_name format a7 heading "Last|Name"&lt;br /&gt;column email format a8 heading "Email"&lt;br /&gt;column hire_date format a10 heading "Hired"&lt;br /&gt;column phone_number format a12 heading "Phone"&lt;br /&gt;column salary format $999,999 heading "Salary"&lt;br /&gt;SET linesize 80&lt;br /&gt;SET pagesize 15&lt;br /&gt;&lt;br /&gt;ttitle LEFT '09/07/2011' RIGHT 'Page:' SQL.pno SKIP 2 CENTER 'HR REPORT' SKIP&lt;br /&gt;BTITLE COL 35 'CONFIDENTIAL' ON&lt;br /&gt;&lt;br /&gt;select * from employees where rownum &amp;lt; 7;&lt;br /&gt;&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;and our report looks like this now.&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;pre style="background-color: #eeeeee; border: 1px dashed #999999; color: black; font-family: Andale Mono, Lucida Console, Monaco, fixed, monospace; font-size: 12px; line-height: 14px; overflow: auto; padding: 5px; width: 100%;"&gt;&lt;code&gt;&lt;br /&gt;09/07/2011                                                             Page:   1&lt;br /&gt;                                                                                &lt;br /&gt;                                   HR REPORT                                    &lt;br /&gt;First     | Last  |        |            |          |            &lt;br /&gt;Name      | Name  | Email  | Phone      |  Hired   |   Salary &lt;br /&gt;---------- ------- -------- ------------ ---------- ----------&lt;br /&gt;Steven    |King   |SKING   |515.123.4567|17-JUN-03 |   $24,000&lt;br /&gt;Neena     |Kochhar|NKOCHHAR|515.123.4568|21-SEP-05 |   $17,000&lt;br /&gt;Lex       |De Haan|LDEHAAN |515.123.4569|13-JAN-01 |   $17,000&lt;br /&gt;Alexander |Hunold |AHUNOLD |590.423.4567|03-JAN-06 |    $9,000&lt;br /&gt;Bruce     |Ernst  |BERNST  |590.423.4568|21-MAY-07 |    $6,000&lt;br /&gt;David     |Austin |DAUSTIN |590.423.4569|25-JUN-05 |    $4,800&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;                                                                                &lt;br /&gt;                                   CONFIDENTIAL                                 &lt;br /&gt;&lt;br /&gt; 6 rows selected &lt;br /&gt;&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;Pretty nifty, if you've got several SQL*Plus reports around that you need to run on SQL Developer. &amp;nbsp;Remember, like SQL*Plus, you can check the formatting set at any time by typing&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;pre style="background-color: #eeeeee; border: 1px dashed #999999; color: black; font-family: Andale Mono, Lucida Console, Monaco, fixed, monospace; font-size: 12px; line-height: 14px; overflow: auto; padding: 5px; width: 100%;"&gt;&lt;code&gt;column&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;giving&lt;br /&gt;&lt;pre style="background-color: #eeeeee; border: 1px dashed #999999; color: black; font-family: Andale Mono, Lucida Console, Monaco, fixed, monospace; font-size: 12px; line-height: 14px; overflow: auto; padding: 5px; width: 100%;"&gt;&lt;code&gt;COLUMN  'first_name' ON&lt;br /&gt;FORMAT  a10&lt;br /&gt;HEADING  'First|Name' headsep '|'&lt;br /&gt;JUSTIFY right&lt;br /&gt;&lt;br /&gt;COLUMN  'hire_date' ON&lt;br /&gt;FORMAT  a10&lt;br /&gt;HEADING  'Hired' headsep '|'&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;COLUMN  'phone_number' ON&lt;br /&gt;FORMAT  a12&lt;br /&gt;HEADING  'Phone' headsep '|'&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;COLUMN  'commission_pct' ON&lt;br /&gt;noprint&lt;br /&gt;&lt;br /&gt;COLUMN  'email' ON&lt;br /&gt;FORMAT  a8&lt;br /&gt;HEADING  'Email' headsep '|'&lt;br /&gt;&lt;br /&gt;COLUMN  'manager_id' ON&lt;br /&gt;noprint&lt;br /&gt;&lt;br /&gt;COLUMN  'department_id' ON&lt;br /&gt;noprint&lt;br /&gt;&lt;br /&gt;COLUMN  'last_name' ON&lt;br /&gt;FORMAT  a7&lt;br /&gt;HEADING  'Last|Name' headsep '|'&lt;br /&gt;&lt;br /&gt;COLUMN  'salary' ON&lt;br /&gt;FORMAT  $99,999&lt;br /&gt;HEADING  'Salary' headsep '|'&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;COLUMN  'employee_id' ON&lt;br /&gt;noprint&lt;br /&gt;&lt;br /&gt;COLUMN  'job_id' ON&lt;br /&gt;noprint&lt;br /&gt;&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;or&lt;/span&gt;&lt;br /&gt;&lt;pre style="background-color: #eeeeee; border: 1px dashed #999999; color: black; font-family: Andale Mono, Lucida Console, Monaco, fixed, monospace; font-size: 12px; line-height: 14px; overflow: auto; padding: 5px; width: 100%;"&gt;&lt;code&gt;column employee_id&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;giving&lt;/span&gt;&lt;br /&gt;&lt;pre style="background-color: #eeeeee; border: 1px dashed #999999; color: black; font-family: Andale Mono, Lucida Console, Monaco, fixed, monospace; font-size: 12px; line-height: 14px; overflow: auto; padding: 5px; width: 100%;"&gt;&lt;code&gt;&lt;br /&gt;COLUMN  'employee_id' ON&lt;br /&gt;noprint&lt;br /&gt;&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;You can find out more about SQLDeveloper in the &lt;a href="http://www.oracle.com/technetwork/developer-tools/sql-developer/overview/index.html"&gt;usual place&lt;/a&gt;, and if there are features you'd like to see in the tool, submit a &lt;a href="http://sqldeveloper.oracle.com/"&gt;Feature Request&lt;/a&gt;. &amp;nbsp;If you need more details on SQL*Plus, the latest documentation is &lt;a href="http://download.oracle.com/docs/cd/E14072_01/server.112/e10823.pdf"&gt;here&lt;/a&gt;.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1555497785494345295-580076254518761914?l=barrymcgillin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://barrymcgillin.blogspot.com/feeds/580076254518761914/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1555497785494345295&amp;postID=580076254518761914' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/580076254518761914'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/580076254518761914'/><link rel='alternate' type='text/html' href='http://barrymcgillin.blogspot.com/2011/09/sqlplus-formatting-commands.html' title='SQL*Plus Formatting Commands'/><author><name>Barry McGillin</name><uri>http://www.blogger.com/profile/12215907295974180145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='20' src='http://4.bp.blogspot.com/_E2ChyGhl2so/Sa0bpLVUq3I/AAAAAAAAAcg/RvJ-6Z_DvFM/s1600-R/barry.png'/></author><thr:total>0</thr:total><georss:featurename>15 Drumconnelly Rd, Omagh BT78 1, UK</georss:featurename><georss:point>54.54483701530535 -7.275867462158203</georss:point><georss:box>54.54023201530535 -7.285737962158203 54.549442015305345 -7.265996962158203</georss:box></entry><entry><id>tag:blogger.com,1999:blog-1555497785494345295.post-1574938872230592044</id><published>2011-07-04T09:37:00.000-07:00</published><updated>2011-07-04T09:48:23.507-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='define'/><category scheme='http://www.blogger.com/atom/ns#' term='scan'/><category scheme='http://www.blogger.com/atom/ns#' term='SQL_Developer SQL*Plus'/><category scheme='http://www.blogger.com/atom/ns#' term='substitution variables'/><category scheme='http://www.blogger.com/atom/ns#' term='SQL*Plus'/><category scheme='http://www.blogger.com/atom/ns#' term='oracle'/><title type='text'>SQL*Plus Commands</title><content type='html'>Its funny how many people forget we support a lot of the basic SQLPlus functionality in SQL Developer.  For example, today, &lt;a href="http://apex-notes.blogspot.com/2007/09/i-use-substitution-string-in-my.html"&gt;Paulo &lt;/a&gt;blogged on how to stop scanning for substitution variables in a script.  &lt;div&gt;&lt;br /&gt;&lt;div&gt;He rightly pointed to the deprecated 'SET SCAN OFF' and the current 'SET DEFINE OFF' to fix his problem.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;We support a lot of plus parameters in SQL*Plus and are adding more on each release.  For now, though, if you are using SQLDeveloper and are looking for the current settings in the worksheet, you can use the 'show all' command which shows the state of any parameters that are in force at that time.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;e.g.,  The default will give you this.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;appinfo is OFF and set to "SQL Developer"&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;arraysize default&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;autocommit OFF&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;autoprint OFF&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;autotrace OFF&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;copycommit 0&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;define "&amp;amp;"&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;echo OFF&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;escape OFF&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;FEEDBACK ON for 6 or more rows&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;null "" &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;serveroutput OFF&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;spool OFF&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;sqlcode 0&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;termout ON&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;timing OFF&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;USER is HR&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;verify ON&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;For supported SQL*Plus commands you can also use 'help' command which lists the commands supported.  e.g.,&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;For help on a topic type help &lt;topic&gt; &lt;/topic&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;List of Help topics available:&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;    /&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;    @&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;    @@&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;    ACCEPT&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;    APPEND&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;    ARCHIVE LOG&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;    CHANGE&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;    COLUMN&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;    CONNECT&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;    COPY&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;    DEFINE&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;    DEL&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;    DESCRIBE&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;    DISCONNECT&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;    EDIT&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;    EXECUTE&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;    EXIT&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;    GET&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;    HOST&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;    INPUT&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;    LIST&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;    PASSWORD&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;    PAUSE&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;    PRINT&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;    PROMPT&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;    QUIT&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;    REMARK&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;    RESERVED WORDS&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;    RUN&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;    SAVE&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;    SET&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;    SHOW&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;    SHUTDOWN&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;    SPOOL&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;    SQLPLUS&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;    START&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;    STARTUP&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;    TIMING&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;    UNDEFINE&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;    VARIABLE&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;    WHENEVER OSERROR&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;    WHENEVER SQLERROR&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;    XQUERY&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I'll follow this up with another post of the SQLDeveloper 3.1 functionality where we are supporting more of the printing functionality around  column formatting and titles.&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1555497785494345295-1574938872230592044?l=barrymcgillin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://barrymcgillin.blogspot.com/feeds/1574938872230592044/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1555497785494345295&amp;postID=1574938872230592044' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/1574938872230592044'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/1574938872230592044'/><link rel='alternate' type='text/html' href='http://barrymcgillin.blogspot.com/2011/07/sqlplus-commands.html' title='SQL*Plus Commands'/><author><name>Barry McGillin</name><uri>http://www.blogger.com/profile/12215907295974180145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='20' src='http://4.bp.blogspot.com/_E2ChyGhl2so/Sa0bpLVUq3I/AAAAAAAAAcg/RvJ-6Z_DvFM/s1600-R/barry.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1555497785494345295.post-3625653643901876965</id><published>2011-06-17T10:00:00.000-07:00</published><updated>2011-06-17T11:06:03.625-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Migration Workbench SQL Developer'/><title type='text'>Scanning Applications</title><content type='html'>&lt;a href="http://2.bp.blogspot.com/-RxTlPZPGysU/TfuNb4BpGOI/AAAAAAAABGQ/2Q3oEygh0O4/s1600/appscan1.PNG" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 200px; height: 200px;" src="http://2.bp.blogspot.com/-RxTlPZPGysU/TfuNb4BpGOI/AAAAAAAABGQ/2Q3oEygh0O4/s200/appscan1.PNG" border="0" alt="" id="BLOGGER_PHOTO_ID_5619240470110083298" /&gt;&lt;/a&gt;&lt;br /&gt;When re-platforming any application,  there are specific things that must be changed in order to make that application work on the new platform.  Database migration has been available in SQL Developer since 1.2.  However, this is only part of the process of changing an application.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;In SQL Developer 3.0, we introduced the ability to scan application source code for items of interest that required migration.  We call these items rules.  These rules are defined in a simple XML format.  We have included rules for Sybase CT and DB lib client applications by default.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;In 3.1 we extended the support for applications and have opened up the rules API so that a rule can be specified for any type of file.  We have included a mechanism to recognize files with and without extensions so we only apply rules appropriate to the file type.  &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span"&gt;This produces a nice summary of the contents of the application, no matter what source is used.  As you can see each rule is made is made up of a regular expression.  Each rule is applied to the file and the results aggregated and summarized by type, call and volume.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span"  &gt;High Level Overview&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span"  &gt;-------------------&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span"  &gt;        63 total calls found&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span"  &gt;        43 distinct calls found&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span"  &gt;        8 files scanned&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span"  &gt;        8 language types&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span"  &gt;        12 total files in source&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span"  &gt;        443 lines of code in scanned application&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span"  &gt;-------------------------------------------------------------&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span"  &gt;File Type Summary&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span"  &gt;----------------------&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span"  &gt;         perl    1 file&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span"  &gt;         sql     1 file&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span"  &gt;         c       2 files&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span"  &gt;         php     1 file&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span"  &gt;         java    1 file&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span"  &gt;         ksh     2 files&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span"  &gt;         asp     1 file&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span"  &gt;         specialized     1 file&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span"  &gt;-------------------------------------------------------------&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span"&gt;As we get closer to release we can take a closer look at how we can replace some of the things we found automatically.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1555497785494345295-3625653643901876965?l=barrymcgillin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://barrymcgillin.blogspot.com/feeds/3625653643901876965/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1555497785494345295&amp;postID=3625653643901876965' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/3625653643901876965'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/3625653643901876965'/><link rel='alternate' type='text/html' href='http://barrymcgillin.blogspot.com/2011/06/scanning-applications.html' title='Scanning Applications'/><author><name>Barry McGillin</name><uri>http://www.blogger.com/profile/12215907295974180145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='20' src='http://4.bp.blogspot.com/_E2ChyGhl2so/Sa0bpLVUq3I/AAAAAAAAAcg/RvJ-6Z_DvFM/s1600-R/barry.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/-RxTlPZPGysU/TfuNb4BpGOI/AAAAAAAABGQ/2Q3oEygh0O4/s72-c/appscan1.PNG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1555497785494345295.post-7529323972276350851</id><published>2011-06-03T02:30:00.000-07:00</published><updated>2011-06-03T02:30:00.806-07:00</updated><title type='text'>Oracle Database Development Tools (ODDT): We are looking for APEX and HTML / CSS Developers</title><content type='html'>&lt;a href="http://michaelhichwa.blogspot.com/2011/06/looking-for-apex-and-html-css.html?spref=bl"&gt;Oracle Database Development Tools (ODDT): We are looking for APEX and HTML / CSS Developers&lt;/a&gt;: &lt;span class="Apple-style-span" style="color: rgb(34, 34, 34); font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 13px; line-height: 18px; "&gt;The Oracle Application Express (APEX) team is expanding and looking for additional developers. We are looking for people who can build web applications, SQL and PL/SQL skills are helpful, as are HTML, CSS, JS. We are also looking for an iPhone (Objective C) developer as well. If interested apply at Oracle http://recruitment.oracle.com IRC1545977, IRC1549990, IRC1549989.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1555497785494345295-7529323972276350851?l=barrymcgillin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://michaelhichwa.blogspot.com/2011/06/looking-for-apex-and-html-css.html?spref=bl' title='Oracle Database Development Tools (ODDT): We are looking for APEX and HTML / CSS Developers'/><link rel='replies' type='application/atom+xml' href='http://barrymcgillin.blogspot.com/feeds/7529323972276350851/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1555497785494345295&amp;postID=7529323972276350851' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/7529323972276350851'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/7529323972276350851'/><link rel='alternate' type='text/html' href='http://barrymcgillin.blogspot.com/2011/06/oracle-database-development-tools-oddt.html' title='Oracle Database Development Tools (ODDT): We are looking for APEX and HTML / CSS Developers'/><author><name>Barry McGillin</name><uri>http://www.blogger.com/profile/12215907295974180145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='20' src='http://4.bp.blogspot.com/_E2ChyGhl2so/Sa0bpLVUq3I/AAAAAAAAAcg/RvJ-6Z_DvFM/s1600-R/barry.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1555497785494345295.post-5711338076530647005</id><published>2011-05-03T07:03:00.000-07:00</published><updated>2011-05-03T07:07:29.387-07:00</updated><title type='text'>QR Codes - SQL Developer</title><content type='html'>&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;Using QR codes is a cool way to jump links in mobile content.  This one points you to Oracle SQL Developers home page.  You can generate your own at &lt;a href="http://qrcode.kaywa.com/"&gt;http://qrcode.kaywa.com/&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;img src="http://qrcode.kaywa.com/img.php?s=8&amp;amp;d=http%3A%2F%2Fotn.oracle.com%2Fsqldeveloper" alt="qrcode" /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1555497785494345295-5711338076530647005?l=barrymcgillin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://barrymcgillin.blogspot.com/feeds/5711338076530647005/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1555497785494345295&amp;postID=5711338076530647005' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/5711338076530647005'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/5711338076530647005'/><link rel='alternate' type='text/html' href='http://barrymcgillin.blogspot.com/2011/05/qr-codes-sql-developer.html' title='QR Codes - SQL Developer'/><author><name>Barry McGillin</name><uri>http://www.blogger.com/profile/12215907295974180145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='20' src='http://4.bp.blogspot.com/_E2ChyGhl2so/Sa0bpLVUq3I/AAAAAAAAAcg/RvJ-6Z_DvFM/s1600-R/barry.png'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1555497785494345295.post-5584087674268264891</id><published>2011-04-04T05:28:00.000-07:00</published><updated>2011-04-04T05:32:12.414-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Oracle XE'/><title type='text'>Oracle XE 11.2 is here</title><content type='html'>&lt;div&gt;&lt;span class="Apple-style-span"&gt;Straight from Kris' Blog&lt;/span&gt;&lt;/div&gt;&lt;span class="Apple-style-span"&gt;&lt;a href="http://3.bp.blogspot.com/-f0QU7rBiVL4/TZYbrz6tz4I/AAAAAAAAAZY/MWa4zeMsmsY/s320/Oracle_11.jpg" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 99px;" src="http://3.bp.blogspot.com/-f0QU7rBiVL4/TZYbrz6tz4I/AAAAAAAAAZY/MWa4zeMsmsY/s320/Oracle_11.jpg" border="0" alt="" /&gt;&lt;/a&gt;&lt;span class="Apple-style-span" style="font-size: 13px; line-height: 22px; "&gt;Oracle XE 11.2 is now in Beta.  It can be downloaded &lt;a href="http://bit.ly/XE112_Beta"&gt;&lt;span class="Apple-style-span"&gt;here&lt;/span&gt; &lt;/a&gt; with the documentation &lt;span class="Apple-style-span"&gt;&lt;a href="http://download.oracle.com/docs/cd/E17781_01/index.htm"&gt;here&lt;/a&gt;&lt;/span&gt;. The forum is &lt;a href="http://forums.oracle.com/forums/forum.jspa?forumID=1378&amp;amp;start=0"&gt;&lt;span class="Apple-style-span"&gt;here&lt;/span&gt; &lt;/a&gt;for any questions or issues uncovered.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1555497785494345295-5584087674268264891?l=barrymcgillin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://barrymcgillin.blogspot.com/feeds/5584087674268264891/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1555497785494345295&amp;postID=5584087674268264891' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/5584087674268264891'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/5584087674268264891'/><link rel='alternate' type='text/html' href='http://barrymcgillin.blogspot.com/2011/04/straight-from-kris-blog-oracle-xe-11.html' title='Oracle XE 11.2 is here'/><author><name>Barry McGillin</name><uri>http://www.blogger.com/profile/12215907295974180145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='20' src='http://4.bp.blogspot.com/_E2ChyGhl2so/Sa0bpLVUq3I/AAAAAAAAAcg/RvJ-6Z_DvFM/s1600-R/barry.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/-f0QU7rBiVL4/TZYbrz6tz4I/AAAAAAAAAZY/MWa4zeMsmsY/s72-c/Oracle_11.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1555497785494345295.post-3492778285784349759</id><published>2011-03-30T01:23:00.000-07:00</published><updated>2011-03-30T01:33:05.887-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Migration Workbench SQL Developer'/><category scheme='http://www.blogger.com/atom/ns#' term='new'/><category scheme='http://www.blogger.com/atom/ns#' term='3.0'/><title type='text'>SQL Developer 3.0</title><content type='html'>Last night we released &lt;a href="http://www.oracle.com/technetwork/developer-tools/sql-developer/overview/index.html"&gt;SQL Developer 3.0&lt;/a&gt;.  This has been a large release with a lot of new base &lt;a href="http://www.oracle.com/technetwork/developer-tools/sql-developer/rel3-featurelist-ea-189447.html"&gt;features &lt;/a&gt;and new extensions.  At a high level,  these are the features added. &lt;div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;Schema browser&lt;/li&gt;&lt;li&gt;Query Builder&lt;/li&gt;&lt;li&gt;PL/SQL updates&lt;/li&gt;&lt;li&gt;Import and Export updates&lt;/li&gt;&lt;li&gt;PDF file support&lt;/li&gt;&lt;li&gt;Extended Unit Testing&lt;/li&gt;&lt;li&gt;DBA Navigator&lt;/li&gt;&lt;li&gt;Extended Tuning Support&lt;/li&gt;&lt;li&gt;DBMS Scheduler&lt;/li&gt;&lt;li&gt;Database migration&lt;/li&gt;&lt;li&gt;Integrated spatial support&lt;/li&gt;&lt;li&gt;Data Miner&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.oracle.com/technetwork/developer-tools/sql-developer/downloads/index.html"&gt;Download &lt;/a&gt;it today and have a play with it.  As usual, you can comment on the &lt;a href="http://forums.oracle.com/forums/forum.jspa?forumID=260"&gt;forum &lt;/a&gt;or submit feature request on the &lt;a href="http://htmldb.oracle.com/pls/otn/f?p=42626:16"&gt;exchange&lt;/a&gt;.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1555497785494345295-3492778285784349759?l=barrymcgillin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://barrymcgillin.blogspot.com/feeds/3492778285784349759/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1555497785494345295&amp;postID=3492778285784349759' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/3492778285784349759'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/3492778285784349759'/><link rel='alternate' type='text/html' href='http://barrymcgillin.blogspot.com/2011/03/sql-developer-30.html' title='SQL Developer 3.0'/><author><name>Barry McGillin</name><uri>http://www.blogger.com/profile/12215907295974180145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='20' src='http://4.bp.blogspot.com/_E2ChyGhl2so/Sa0bpLVUq3I/AAAAAAAAAcg/RvJ-6Z_DvFM/s1600-R/barry.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1555497785494345295.post-2393630404340140521</id><published>2011-01-17T04:08:00.001-08:00</published><updated>2011-01-17T05:53:36.291-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SQL Developer'/><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><category scheme='http://www.blogger.com/atom/ns#' term='stack'/><title type='text'>Detecting Hangs in Java</title><content type='html'>One of the things we are looking into right now is performance in SQL Developer and concurrency of operations.   Sometimes, operations that are spawned on  the &lt;a href="http://en.wikipedia.org/wiki/Event_dispatching_thread"&gt;EDT&lt;/a&gt; should not be there.   &lt;div&gt;&lt;br /&gt;&lt;div&gt;These are typical scenarios of the &lt;a href="http://download.oracle.com/javase/6/docs/api/javax/swing/SwingUtilities.html#invokeLater(java.lang.Runnable)"&gt;SwingUtilities.invokelater(Runnable)&lt;/a&gt;.&lt;div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;These operations show themselves to the user as a perceived hang in the UI which is not wanted.  &lt;/div&gt;&lt;div&gt;There are two ways to find these in Java.&lt;/div&gt;&lt;div&gt;&lt;ol&gt;&lt;li&gt;You can use &lt;a href="http://download.oracle.com/javase/1.5.0/docs/tooldocs/share/jstack.html"&gt;JStack&lt;/a&gt;, which is part of the Java SDK.  This is very simple to run, giving it the Process ID of the java program and it prints a stack dump of the JVM.&lt;br /&gt;&lt;br /&gt;Here is some example output from a recent one I found with it.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span"&gt;"AWT-EventQueue-0" prio=6 tid=0x041ac800 nid=0x10f0 runnable [0x0398b000]&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span"&gt;   java.lang.Thread.State: RUNNABLE&lt;/span&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: 'courier new'; font-size: small; "&gt;at java.util.regex.Pattern$BnM.optimize(Pattern.java:4946)&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span"&gt;at java.util.regex.Pattern.compile(Pattern.java:1473)&lt;/span&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: 'courier new'; font-size: small; "&gt;at java.util.regex.Pattern.&lt;init&gt;(Pattern.java:1133)&lt;br /&gt;&lt;/init&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: 'courier new'; font-size: small; "&gt;at java.util.regex.Pattern.compile(Pattern.java:823)&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: 'courier new'; font-size: small; "&gt;at oracle.dbtools.migration.parser.ext.ExtAutoIndentWriter.&lt;init&gt;&lt;br /&gt;&lt;/init&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: 'courier new'; font-size: small; "&gt;   (ExtAutoIndentWriter.java:30)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;This is the relevant snippet of the trace which shows that we are running on the event queue.  Fixing this is a simple case of moving it out of this thread to one of its own, in this case, we've created a RaptorTask to take care of it.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;The other way to find these could be to build in a log handler to your application which can pop a stack trace when a hang is detected.  In SQL Developer, we have log handlers like this built in and when the appropriate flag is set, and the EDT is waiting for a predetermined amount of time, we pop a stack trace, right there to show what was running at that point in time.&lt;/li&gt;&lt;/ol&gt;&lt;div&gt;As we go through these, its making SQL Developer much more performant and responsive working with remote databases and allowing the user to keep control of the UI. &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1555497785494345295-2393630404340140521?l=barrymcgillin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://barrymcgillin.blogspot.com/feeds/2393630404340140521/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1555497785494345295&amp;postID=2393630404340140521' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/2393630404340140521'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/2393630404340140521'/><link rel='alternate' type='text/html' href='http://barrymcgillin.blogspot.com/2011/01/detecting-hangs-in-java.html' title='Detecting Hangs in Java'/><author><name>Barry McGillin</name><uri>http://www.blogger.com/profile/12215907295974180145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='20' src='http://4.bp.blogspot.com/_E2ChyGhl2so/Sa0bpLVUq3I/AAAAAAAAAcg/RvJ-6Z_DvFM/s1600-R/barry.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1555497785494345295.post-3328239821022203159</id><published>2011-01-14T03:33:00.000-08:00</published><updated>2011-01-14T04:19:09.536-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='worksheet'/><category scheme='http://www.blogger.com/atom/ns#' term='SQLDEVELOPER ORACLE'/><title type='text'>Clicking around the worksheet</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_E2ChyGhl2so/TTA2QF2wEzI/AAAAAAAABC4/UZlZ_q55rGM/s1600/ctrl-click-2.PNG"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 200px; height: 155px;" src="http://3.bp.blogspot.com/_E2ChyGhl2so/TTA2QF2wEzI/AAAAAAAABC4/UZlZ_q55rGM/s200/ctrl-click-2.PNG" border="0" alt="" id="BLOGGER_PHOTO_ID_5562005189880189746" /&gt;&lt;/a&gt;As we have been getting close to another EA release, one thing which struck me as pretty cool and something we haven't talked about in a while are the click actions in the worksheet.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Looking at the image on the right, we can see the first action that is available.  By holding the &lt;ctrl&gt; down while we move the mouse over the table employees we can see that it is highlighted and underlined.  If we click on this, it will open up the appropriate editor.&lt;/ctrl&gt;&lt;/div&gt;&lt;div&gt;&lt;ctrl&gt;&lt;br /&gt;&lt;/ctrl&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;ctrl&gt;&lt;br /&gt;&lt;/ctrl&gt;&lt;/div&gt;&lt;img src="http://1.bp.blogspot.com/_E2ChyGhl2so/TTA3aoWgzGI/AAAAAAAABDA/ka1_mYJdkUo/s200/ctrl-click-3.PNG" style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 200px; height: 121px;" border="0" alt="" id="BLOGGER_PHOTO_ID_5562006470450531426" /&gt;&lt;div&gt;Next we can see the list of SQL*Plus files below the query in the worksheet.  Normally, these are written by locating the file and putting the appropriate syntax in place. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;img src="http://2.bp.blogspot.com/_E2ChyGhl2so/TTA5HOCDshI/AAAAAAAABDI/H6_VqXXm7AE/s200/ctrl-click-4.PNG" style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 200px; height: 150px;" border="0" alt="" id="BLOGGER_PHOTO_ID_5562008335991157266" /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Well to make reviewing this files easier, we've added a similar functionality to these files.  This way when we click on a file call, and the file exists, we can open that in an editor for reviewing and editing.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;img src="http://4.bp.blogspot.com/_E2ChyGhl2so/TTA7ZKahucI/AAAAAAAABDQ/7Ta2tii4M4M/s200/ctrl-click-5.PNG" style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 200px; height: 107px;" border="0" alt="" id="BLOGGER_PHOTO_ID_5562010843280947650" /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;There are three places where we will look for files.  The first is straight forward and is the complete file path name.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;@/MY/FULL/PATH/NAME/BARRY.SQL&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The second is taking files in your ORACLE_HOME directory and the '?' directive denotes that directory.  so a typical directory looks like this.&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;@?/admin/catalog.sql&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;Finally, the last one, has the format:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;@barry.sql&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;This last file structure takes the file from the USER_HOME directory in SQL Developer or, the place where you ran a script, or if you have the script directory set in the worksheet preferences, it will look there.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;This will be available in our next EA, EA3.&lt;/div&gt;&lt;div&gt;Enjoy!&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1555497785494345295-3328239821022203159?l=barrymcgillin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://barrymcgillin.blogspot.com/feeds/3328239821022203159/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1555497785494345295&amp;postID=3328239821022203159' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/3328239821022203159'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/3328239821022203159'/><link rel='alternate' type='text/html' href='http://barrymcgillin.blogspot.com/2011/01/clicking-around-worksheet.html' title='Clicking around the worksheet'/><author><name>Barry McGillin</name><uri>http://www.blogger.com/profile/12215907295974180145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='20' src='http://4.bp.blogspot.com/_E2ChyGhl2so/Sa0bpLVUq3I/AAAAAAAAAcg/RvJ-6Z_DvFM/s1600-R/barry.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_E2ChyGhl2so/TTA2QF2wEzI/AAAAAAAABC4/UZlZ_q55rGM/s72-c/ctrl-click-2.PNG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1555497785494345295.post-2993947648949993322</id><published>2010-12-07T14:13:00.001-08:00</published><updated>2010-12-07T14:22:11.446-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Migration Workbench SQL Developer'/><category scheme='http://www.blogger.com/atom/ns#' term='Connections'/><title type='text'>Disconnecting Folder Connections</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_E2ChyGhl2so/TP6yXxoim9I/AAAAAAAABBs/4kGVNuC2q28/s1600/disconn_conns.PNG"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 260px; height: 183px;" src="http://2.bp.blogspot.com/_E2ChyGhl2so/TP6yXxoim9I/AAAAAAAABBs/4kGVNuC2q28/s320/disconn_conns.PNG" border="0" alt="" id="BLOGGER_PHOTO_ID_5548067912497142738" /&gt;&lt;/a&gt;A post came in on the forum the other day about disconnecting numbers of connections in SQL Developer that are open.  This was on the Feature request application for a while and having a few hours free with snow 9 inches deep outside, I plugged it in.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;This feature now has 2 options.  The first is on the main connections node where you can now disconnect all connections that are open.&lt;/div&gt;&lt;div&gt;&lt;img src="http://4.bp.blogspot.com/_E2ChyGhl2so/TP6zMBAPqkI/AAAAAAAABB8/uybTP-HHfJw/s320/disconn_foilders.PNG" style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 257px; height: 197px;" border="0" alt="" id="BLOGGER_PHOTO_ID_5548068809976293954" /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The other option added was on folders.  Now you can disconnect all the connections in a folder which if you have them organised by category or type can help speed up your maneuvers around the tool.&lt;/div&gt;&lt;br /&gt;&lt;div&gt;This will be in the next EA of SQL Developer 3.0.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1555497785494345295-2993947648949993322?l=barrymcgillin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://barrymcgillin.blogspot.com/feeds/2993947648949993322/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1555497785494345295&amp;postID=2993947648949993322' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/2993947648949993322'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/2993947648949993322'/><link rel='alternate' type='text/html' href='http://barrymcgillin.blogspot.com/2010/12/disconnecting-folder-connections.html' title='Disconnecting Folder Connections'/><author><name>Barry McGillin</name><uri>http://www.blogger.com/profile/12215907295974180145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='20' src='http://4.bp.blogspot.com/_E2ChyGhl2so/Sa0bpLVUq3I/AAAAAAAAAcg/RvJ-6Z_DvFM/s1600-R/barry.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_E2ChyGhl2so/TP6yXxoim9I/AAAAAAAABBs/4kGVNuC2q28/s72-c/disconn_conns.PNG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1555497785494345295.post-1569324348505550524</id><published>2010-11-19T10:45:00.000-08:00</published><updated>2010-11-19T15:39:19.372-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SQL Developer'/><category scheme='http://www.blogger.com/atom/ns#' term='Bridge'/><title type='text'>Cross Connection Queries</title><content type='html'>&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_E2ChyGhl2so/TObHkn_XWdI/AAAAAAAABA8/Eo6oRtxFEnY/s1600/copytooracle.PNG"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 279px; height: 269px;" src="http://2.bp.blogspot.com/_E2ChyGhl2so/TObHkn_XWdI/AAAAAAAABA8/Eo6oRtxFEnY/s320/copytooracle.PNG" border="0" alt="" id="BLOGGER_PHOTO_ID_5541335823549946322" /&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 0); -webkit-text-decorations-in-effect: none; "&gt;&lt;/span&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_E2ChyGhl2so/TObHkn_XWdI/AAAAAAAABA8/Eo6oRtxFEnY/s1600/copytooracle.PNG"&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 0); -webkit-text-decorations-in-effect: none; "&gt;When we were hooking up the "Copy to Oracle" functionality, &lt;/span&gt;&lt;/a&gt;&lt;a href="http://dermotoneill.blogspot.com/"&gt;Dermot &lt;/a&gt;added a cool bit of code to allow us to do queries across connections.&lt;div&gt;&lt;a href="http://3.bp.blogspot.com/_E2ChyGhl2so/TOcHul1T-7I/AAAAAAAABBc/A6cBVPKecF0/s1600/bridgejoin.PNG"&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The Copy to Oracle function allows you point at a table in any supported connection type and choose copy to oracle from the menu.  This then goes and creates the table in Oracle and populates it with data from the source table.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Now, as I said, to do this, &lt;a href="http://dermotoneill.blogspot.com/"&gt;Dermot &lt;/a&gt;added some functionality to enable this.  This functionality is very flexible and the UI in Copy to Oracle uses this mechanism to achieve the functionality.&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The command shown here is just the basics of what this can do and we will document this in more detail as we go on.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;&lt;span class="Apple-style-span"&gt;BRIDGE DEMO_CUSTOMERS AS access&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;                (SELECT * FROM "Order Details") ;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span" style="white-space: pre;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;This command can be broken into a few pieces.  After the BRIDGE token, the identifier is the name of the new table to be create in the current Oracle connection.  The access identifier represents the connection that we will copy the table from and the query between the braces is the query which will be run on the source connection as the data for the new table.&lt;/div&gt;&lt;div&gt;&lt;img src="http://2.bp.blogspot.com/_E2ChyGhl2so/TOcAxnWeEPI/AAAAAAAABBE/r99ekPVkMNc/s320/accesscopied.PNG" style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 320px; height: 239px;" border="0" alt="" id="BLOGGER_PHOTO_ID_5541398718879502578" /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Running the commands listed here, drop the table if it exists and creates it on the Oracle Connection.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;We then run a query against that connection we get the following results in the results panel.&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;This is just a small view into what the bridge command can do and how it is used in the Copy to Oracle Functionality today.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;Now we have the table is in Oracle.  However, we can do something even cooler than this.  We can join a table in Oracle with a table in Access and show the results.&lt;/div&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div style="text-align: left;"&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;&lt;span class="Apple-style-span"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"&gt;BRIDGE TEMPcustomers AS access&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;(SELECT * FROM "Order Details") &lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;&lt;span class="Apple-style-span"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"&gt;SELECT * FROM TEMPcustomers,Products &lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;&lt;span class="Apple-style-span"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"&gt;where Products.productid=TEMPcustomers.ProductID;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;This is a little step further.  We take the table in Access, copy it to Oracle as a temporary table and join it with a table in Oracle to show the results below.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;img src="http://2.bp.blogspot.com/_E2ChyGhl2so/TOcJUf-Hs1I/AAAAAAAABBk/GwaDrJpJrVo/s320/bridgejoin.PNG" style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 179px;" border="0" alt="" id="BLOGGER_PHOTO_ID_5541408114286768978" /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1555497785494345295-1569324348505550524?l=barrymcgillin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://barrymcgillin.blogspot.com/feeds/1569324348505550524/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1555497785494345295&amp;postID=1569324348505550524' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/1569324348505550524'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/1569324348505550524'/><link rel='alternate' type='text/html' href='http://barrymcgillin.blogspot.com/2010/11/cross-connection-queries.html' title='Cross Connection Queries'/><author><name>Barry McGillin</name><uri>http://www.blogger.com/profile/12215907295974180145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='20' src='http://4.bp.blogspot.com/_E2ChyGhl2so/Sa0bpLVUq3I/AAAAAAAAAcg/RvJ-6Z_DvFM/s1600-R/barry.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_E2ChyGhl2so/TObHkn_XWdI/AAAAAAAABA8/Eo6oRtxFEnY/s72-c/copytooracle.PNG' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1555497785494345295.post-2298887839080900124</id><published>2010-10-28T03:15:00.000-07:00</published><updated>2010-10-28T04:13:05.653-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Migration Workbench SQL Developer'/><category scheme='http://www.blogger.com/atom/ns#' term='database migration'/><title type='text'>Migration Estimation from SQL Developer</title><content type='html'>Last post we mentioned all the features of 3.0 for migration.  This one, we're taking it a bit further and looking at the overview of the migration project itself.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;For most users,  the main thing they want to know is how much of the migration will be completed automatically.  We've introduced a new spreadsheet which gets generated from the repository and gives a birds eye view of your database servers and your applications which are being migrated.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;img src="http://2.bp.blogspot.com/_E2ChyGhl2so/TMlS58m7I5I/AAAAAAAABAk/9Dq0TgZ2Rqw/s200/migration_projects.PNG" style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 145px; height: 200px;" border="0" alt="" id="BLOGGER_PHOTO_ID_5533044772676772754" /&gt;&lt;div&gt;Here we have a number of migration projects in the migration navigator which are Sybase, SQL Server and DB2.  We have converted all three and need to know how much of the migration the tools can do.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Very simply, we can right click on the top projects node, or any individual project node and choose to "create an estimation plan".  This will generate a spreadsheet with the detail of the project with a high level summary of the state of the project.&lt;/div&gt;&lt;div&gt;&lt;img src="http://2.bp.blogspot.com/_E2ChyGhl2so/TMlYsF2SdBI/AAAAAAAABAs/mNcqlNhKskI/s200/estimationPlan.png" style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 200px; height: 177px;" border="0" alt="" id="BLOGGER_PHOTO_ID_5533051131708732434" /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;On the summary page, there are 4 different graphs.  The top two deal with the databases being migrated and how much automation the tool can provide.  Specifically, they show how many objects failed as part of the migration and which area the failures occured in.  The bottom two show the applications which have been scanned and show what percentage of the files which make up the application have database calls which need to be changed.  This example shows the Sybase ctlib sample applications, the most of which have things to change.  &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;This represents the first page of the migration plan.  Each of the other pages in the plan break down the database migration into tables, stored procedures, triggers and view detail.  The user is allowed to add specifics for their organisation which will help put together a project estimate of how long it will take and how much resource it will take to bring the database migration project to a production state.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1555497785494345295-2298887839080900124?l=barrymcgillin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://barrymcgillin.blogspot.com/feeds/2298887839080900124/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1555497785494345295&amp;postID=2298887839080900124' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/2298887839080900124'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/2298887839080900124'/><link rel='alternate' type='text/html' href='http://barrymcgillin.blogspot.com/2010/10/migration-estimation-from-sql-developer.html' title='Migration Estimation from SQL Developer'/><author><name>Barry McGillin</name><uri>http://www.blogger.com/profile/12215907295974180145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='20' src='http://4.bp.blogspot.com/_E2ChyGhl2so/Sa0bpLVUq3I/AAAAAAAAAcg/RvJ-6Z_DvFM/s1600-R/barry.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_E2ChyGhl2so/TMlS58m7I5I/AAAAAAAABAk/9Dq0TgZ2Rqw/s72-c/migration_projects.PNG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1555497785494345295.post-7382603779649376944</id><published>2010-10-18T12:34:00.000-07:00</published><updated>2010-10-18T14:14:22.442-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SQL Developer'/><category scheme='http://www.blogger.com/atom/ns#' term='Migration'/><category scheme='http://www.blogger.com/atom/ns#' term='3.0'/><title type='text'>Migration Features in SQL Developer 3.0</title><content type='html'>Since we released 2.1, we've worked with several customers and have added several great new features which have helped these customers  increase the automation within their migration and the information they receive about it.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;Here's a quick breakdown and we'll delve into these in later posts.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_E2ChyGhl2so/TLynjeOKtHI/AAAAAAAABAc/O7bfujTK59U/s1600/cndline-ovrview.PNG"&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 0); "&gt;&lt;/span&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_E2ChyGhl2so/TLynjeOKtHI/AAAAAAAABAc/O7bfujTK59U/s1600/cndline-ovrview.PNG"&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 0); "&gt;&lt;b&gt;Command  line interface&lt;/b&gt;&lt;/span&gt;&lt;/a&gt;&lt;div&gt;Most customers are looking to use a command line interface to do at least some of the migration for them,  These can include all the steps that SQL Developer supports:&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;Capture - Connect to a source database, scan the data dictionary and create an independent model of the source.&lt;/li&gt;&lt;li&gt;Analyze - Analyze the model and report on what the source database contains and what issues there might be in it which need manual intervention&lt;/li&gt;&lt;li&gt;Convert to Oracle. - Convert the source model into its Oracle equivilent. &lt;/li&gt;&lt;li&gt;Generate Oracle Model - From the converted model, the user can generate the DDL for all the new schema in his database including all PLSQL&lt;/li&gt;&lt;li&gt;Build new database - The tool can run the sql produced and report on the errors which were found, even correlating between objects in the source and objects in the target&lt;/li&gt;&lt;li&gt;Move data - You can move data in two ways, either connected to the target database or you can generate unload files for the source database and SQL*Loader scripts to load this into Oracle&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Enterprise Capture&lt;/b&gt;&lt;/div&gt;&lt;div&gt;This new feature allows the user to point at a server and capture all the databases in that server. This has been tested on Servers with up on 100 databases, captured and processed in minutes.  Its one of the biggest requests we have had over the last few releases and this makes multi schema migration a breeze.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Application Scanning&lt;/b&gt;&lt;/div&gt;&lt;div&gt;In 3.0 we have introduced the concept of applications tied to databases.  For this release we have focused on ctlib and dblib programs.  Today, we can find all sybase calls in any program. We generate details reports on the contents of your application which provide information on size and complexity of the migration problem.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Estimation Reports&lt;/b&gt;&lt;/div&gt;&lt;div&gt;3.0 has introduced extensive database reports on the migration. Specifically, the reports include&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;High level object summary&lt;/li&gt;&lt;li&gt;High level error summary&lt;/li&gt;&lt;li&gt;Detailed error summary&lt;/li&gt;&lt;li&gt;Detailed object size summary&lt;/li&gt;&lt;li&gt;Detailed comparison between source objects, capture and converted objects and the new Oracle object&lt;/li&gt;&lt;li&gt;Temporary table usage&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Migration Project Navigator&lt;/b&gt;&lt;/div&gt;&lt;div&gt;3.0 has also introduced a brand new project concept for Migration Projects.  This is a new navigator which holds all the servers in a project all together.  This has the benefit of being able to run several projects together, but report centrally on any one of them at any time with detailed information.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Migration Wizard&lt;/b&gt;&lt;/div&gt;&lt;div&gt;In 3.0, we have changed the quick migrate wizard to be a generic multi entry, single source of true path through a migration.  This replaces the whole Quick Migrate concept and is now the only way to do a migration with the tool.  &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;&lt;div style="font-weight: normal; "&gt;&lt;b&gt;Parser and Translation enhancements&lt;/b&gt;&lt;/div&gt;&lt;div style="font-weight: normal; "&gt;A lot of work has gone into fixing issues within the translators so they can perform in a better way and produce more consistent output.  We are continuing to improve this with each release.&lt;/div&gt;&lt;div style="font-weight: normal; "&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-weight: normal; "&gt;&lt;br /&gt;&lt;/div&gt;&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Copy to Oracle&lt;/b&gt;&lt;/div&gt;&lt;div&gt;Lastly, we have a new concept on all the third party navigators which is called "Copy to Oracle".  This allows the user to copy tables and procedures from third parties into an oracle schema, without a migration repository.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1555497785494345295-7382603779649376944?l=barrymcgillin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://barrymcgillin.blogspot.com/feeds/7382603779649376944/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1555497785494345295&amp;postID=7382603779649376944' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/7382603779649376944'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/7382603779649376944'/><link rel='alternate' type='text/html' href='http://barrymcgillin.blogspot.com/2010/10/migration-features-in-sql-developer-30.html' title='Migration Features in SQL Developer 3.0'/><author><name>Barry McGillin</name><uri>http://www.blogger.com/profile/12215907295974180145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='20' src='http://4.bp.blogspot.com/_E2ChyGhl2so/Sa0bpLVUq3I/AAAAAAAAAcg/RvJ-6Z_DvFM/s1600-R/barry.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1555497785494345295.post-1972190901515417813</id><published>2010-10-16T10:32:00.000-07:00</published><updated>2010-10-16T10:39:04.735-07:00</updated><title type='text'>SQL Developer 3.0 EA1</title><content type='html'>After nearly a year in development, we're ready to show you what we have been doing in Sql Developer. You can try it out from &lt;a href="http://www.oracle.com/technetwork/developer-tools/sql-developer/index-rel3-ea1-166825.html"&gt;here&lt;/a&gt;. &lt;br&gt;&lt;br /&gt;Over the next few weeks, I'll be going through some of the features and giving some ideas as to what this can be used for.&lt;br /&gt;B&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1555497785494345295-1972190901515417813?l=barrymcgillin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://barrymcgillin.blogspot.com/feeds/1972190901515417813/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1555497785494345295&amp;postID=1972190901515417813' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/1972190901515417813'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/1972190901515417813'/><link rel='alternate' type='text/html' href='http://barrymcgillin.blogspot.com/2010/10/sql-developer-30-ea1.html' title='SQL Developer 3.0 EA1'/><author><name>Barry McGillin</name><uri>http://www.blogger.com/profile/12215907295974180145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='20' src='http://4.bp.blogspot.com/_E2ChyGhl2so/Sa0bpLVUq3I/AAAAAAAAAcg/RvJ-6Z_DvFM/s1600-R/barry.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1555497785494345295.post-6960144753984384657</id><published>2009-11-19T08:27:00.000-08:00</published><updated>2009-11-19T08:53:03.597-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='simplicity sql developer'/><title type='text'>Kissing - Keeping it simple</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_E2ChyGhl2so/SwVyJ4YgC9I/AAAAAAAAA3Y/g60_WTBG1hM/s1600/Simplicity.png"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 112px; height: 232px;" src="http://3.bp.blogspot.com/_E2ChyGhl2so/SwVyJ4YgC9I/AAAAAAAAA3Y/g60_WTBG1hM/s200/Simplicity.png" alt="" id="BLOGGER_PHOTO_ID_5405852441807686610" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;I spotted this today and couldnt resist talking about it.   I was reading &lt;a href="http://stuffthathappens.com/blog/2008/03/05/simplicity/"&gt;Eric Burke's&lt;/a&gt; comic look at typical product masters and looking inwardly at our own products.  Most of the 'Walk up and use' products are things like the iPod, the toaster and other.&lt;br /&gt;&lt;br /&gt;Avoiding the 'me too' scenario is going against the grain in many places.  For SQL Developer, we have tried to keep the amount of functionality exposed as clear and simple as possible.&lt;br /&gt;&lt;br /&gt;In 2.1 we have pushed a lot of the added functionality down into menus which do not need to be used all the time.  We have simplified the number of dockables that we start and made a lot of the basic functionality of the navigator, worksheet and data management much cleaner and simpler.&lt;br /&gt;&lt;br /&gt;We're getting ready to cut a &lt;a href="http://otn.oracle.com/sqldeveloper"&gt;release candidate&lt;/a&gt; so you should check it out for yourself.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1555497785494345295-6960144753984384657?l=barrymcgillin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://barrymcgillin.blogspot.com/feeds/6960144753984384657/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1555497785494345295&amp;postID=6960144753984384657' title='40 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/6960144753984384657'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/6960144753984384657'/><link rel='alternate' type='text/html' href='http://barrymcgillin.blogspot.com/2009/11/kissing-keeping-it-simple.html' title='Kissing - Keeping it simple'/><author><name>Barry McGillin</name><uri>http://www.blogger.com/profile/12215907295974180145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='20' src='http://4.bp.blogspot.com/_E2ChyGhl2so/Sa0bpLVUq3I/AAAAAAAAAcg/RvJ-6Z_DvFM/s1600-R/barry.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_E2ChyGhl2so/SwVyJ4YgC9I/AAAAAAAAA3Y/g60_WTBG1hM/s72-c/Simplicity.png' height='72' width='72'/><thr:total>40</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1555497785494345295.post-6663992472052395809</id><published>2009-11-13T09:13:00.000-08:00</published><updated>2009-11-14T06:33:50.844-08:00</updated><title type='text'>Database Unit Testing:- Do you do it?</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_E2ChyGhl2so/Sv2W7poYxCI/AAAAAAAAA3I/77lYJe9tMFk/s1600-h/UTNAV.JPG"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 186px; height: 200px;" src="http://2.bp.blogspot.com/_E2ChyGhl2so/Sv2W7poYxCI/AAAAAAAAA3I/77lYJe9tMFk/s200/UTNAV.JPG" alt="" id="BLOGGER_PHOTO_ID_5403641079446160418" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Testing.  When you're writing code, how often do you test it?  Ok, you test it, but how often do you spend the time to put a set of discrete tests together to make sure that your code is doing what you thought it would do and moreover, it doesnt do what its not supposed to.&lt;br /&gt;&lt;br /&gt;As part of SQL Developer 2.1, Unit Testing is one of the main features we have added.  This is very different to anything you've seen in this area before.  There are 5 different things on the new navigator we have added.&lt;br /&gt;&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Tests:  These are individual or discreate tests against a piece of code like a stored procedure or a function or package.  Each test can have several implementations of the test.  I.e., if it is a stored procedure, you can have an implementation with n implementation depending on the permutations of the paramters that you want to support.&lt;/li&gt;&lt;li&gt;Suites:  This is a regular concept, like JUnit, which you can use to group your tests and run them together, in sequence.   In fact, with 2.1, you can run unit tests from the command line which means you can hook them up with your build machine and run these in as part of a standard build and publish results with your builds&lt;/li&gt;&lt;li&gt;reports:  We have canned several reports so you can see how your suite of tests ran, what the coverage numbers are and allow you to drill through each implementation that was run.&lt;/li&gt;&lt;li&gt;Lookups:  Lookups are setup to allow you to predefine static parameter values that can be group by functional need and used in test implementations.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Libraries:  Like the word says, these are libraries of startups, teardowns, validations, and defined dynamic values that we want to use regularly in tests.&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_E2ChyGhl2so/Sv2cAGeOkoI/AAAAAAAAA3Q/7gB_9EltnDk/s1600-h/UTIMP.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 200px; height: 158px;" src="http://2.bp.blogspot.com/_E2ChyGhl2so/Sv2cAGeOkoI/AAAAAAAAA3Q/7gB_9EltnDk/s200/UTIMP.JPG" alt="" id="BLOGGER_PHOTO_ID_5403646653465793154" border="0" /&gt;&lt;/a&gt;The test here shows each implementation of the test. The  implementation is a set of parameters which will give you a specific result, based on processing the parameters as part of the stored procedure.&lt;br /&gt;&lt;br /&gt;This is our first release of Unit Testing and we will add more features in the next few releases.  This release allows you to set up suites of tests with parameters covered by all the scalar datatypes.  We will cover more abstract types in future releases.&lt;br /&gt;&lt;br /&gt;This is available as part of SQL Developer 2.1, which at time of writing this is available as an EA from http://otn.oracle.com/sqldeveloper.  Download it and play with it. If there are things you like, let us know and if there are things you would like added, then you can let us know on the feature request page as usual which is http://sqldeveloper.oracle.com&lt;br /&gt;&lt;br /&gt;&lt;img src="file:///C:/DOCUME%7E1/bamcgill/LOCALS%7E1/Temp/moz-screenshot-4.jpg" alt="" /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1555497785494345295-6663992472052395809?l=barrymcgillin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://barrymcgillin.blogspot.com/feeds/6663992472052395809/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1555497785494345295&amp;postID=6663992472052395809' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/6663992472052395809'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/6663992472052395809'/><link rel='alternate' type='text/html' href='http://barrymcgillin.blogspot.com/2009/11/database-unit-testing-do-you-do-it.html' title='Database Unit Testing:- Do you do it?'/><author><name>Barry McGillin</name><uri>http://www.blogger.com/profile/12215907295974180145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='20' src='http://4.bp.blogspot.com/_E2ChyGhl2so/Sa0bpLVUq3I/AAAAAAAAAcg/RvJ-6Z_DvFM/s1600-R/barry.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_E2ChyGhl2so/Sv2W7poYxCI/AAAAAAAAA3I/77lYJe9tMFk/s72-c/UTNAV.JPG' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1555497785494345295.post-1050694746318246915</id><published>2009-10-11T12:18:00.001-07:00</published><updated>2009-11-13T09:12:38.845-08:00</updated><title type='text'>Everyday tasks with Sql Developer</title><content type='html'>Sue has kicked off open world introducing SqlDeveloper 2.1.&lt;br /&gt;You should check it out on http://sqldeveloper.oracle.com .&lt;br /&gt;If you're around openworld tomorrow, you need to check out Kris Rice's talk on Unit testing. It's new, different and really cool!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1555497785494345295-1050694746318246915?l=barrymcgillin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://barrymcgillin.blogspot.com/feeds/1050694746318246915/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1555497785494345295&amp;postID=1050694746318246915' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/1050694746318246915'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/1050694746318246915'/><link rel='alternate' type='text/html' href='http://barrymcgillin.blogspot.com/2009/10/everyday-tasks-with-sql-debeloper.html' title='Everyday tasks with Sql Developer'/><author><name>Barry McGillin</name><uri>http://www.blogger.com/profile/12215907295974180145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='20' src='http://4.bp.blogspot.com/_E2ChyGhl2so/Sa0bpLVUq3I/AAAAAAAAAcg/RvJ-6Z_DvFM/s1600-R/barry.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1555497785494345295.post-2555956111394404285</id><published>2009-08-27T09:58:00.001-07:00</published><updated>2009-08-27T09:58:19.826-07:00</updated><title type='text'>Products and Services | Oracle</title><content type='html'>&lt;a href="http://www.oracle.com/products/index.html"&gt;Products and Services | Oracle&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Shared via &lt;a href="http://addthis.com"&gt;AddThis&lt;/a&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1555497785494345295-2555956111394404285?l=barrymcgillin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://barrymcgillin.blogspot.com/feeds/2555956111394404285/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1555497785494345295&amp;postID=2555956111394404285' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/2555956111394404285'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/2555956111394404285'/><link rel='alternate' type='text/html' href='http://barrymcgillin.blogspot.com/2009/08/products-and-services-oracle.html' title='Products and Services | Oracle'/><author><name>Barry McGillin</name><uri>http://www.blogger.com/profile/12215907295974180145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='20' src='http://4.bp.blogspot.com/_E2ChyGhl2so/Sa0bpLVUq3I/AAAAAAAAAcg/RvJ-6Z_DvFM/s1600-R/barry.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1555497785494345295.post-7625598681720597769</id><published>2009-04-02T05:30:00.001-07:00</published><updated>2009-04-02T05:44:16.233-07:00</updated><title type='text'>APEX on MacOSX</title><content type='html'>Well, I eventually got around to it and have APEX running on my &lt;a href="http://www.apple.com/macbookpro/"&gt;Macbookpro &lt;/a&gt;with 10GR2.&lt;br /&gt;Very nice.  Building up an apex application is neat when you can do it where I live.&lt;br /&gt;&lt;br /&gt;This leaves my dev environment all set up on mac now with:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;&lt;a href="http://sqldeveloper.oracle.com"&gt;SQLDeveloper 1.5.4&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://apex.oracle.com"&gt;Apex 3.2&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://otn.oracle.com/database"&gt;Oracle 10gr2&lt;/a&gt;&lt;/li&gt;&lt;li&gt;and Java with Eclipse :) &lt;/li&gt;&lt;/ol&gt;So, ok, whats weird or unusual about this setup you ask?  Speed. The database and apex responses are instant on the macbook pro, and when I'm done I can export the app and deploy it on apex.oracle.com to share it with other folks.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1555497785494345295-7625598681720597769?l=barrymcgillin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://barrymcgillin.blogspot.com/feeds/7625598681720597769/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1555497785494345295&amp;postID=7625598681720597769' title='8 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/7625598681720597769'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/7625598681720597769'/><link rel='alternate' type='text/html' href='http://barrymcgillin.blogspot.com/2009/04/apex-on-macosx.html' title='APEX on MacOSX'/><author><name>Barry McGillin</name><uri>http://www.blogger.com/profile/12215907295974180145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='20' src='http://4.bp.blogspot.com/_E2ChyGhl2so/Sa0bpLVUq3I/AAAAAAAAAcg/RvJ-6Z_DvFM/s1600-R/barry.png'/></author><thr:total>8</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1555497785494345295.post-360386388654267990</id><published>2009-03-10T10:28:00.000-07:00</published><updated>2009-03-10T10:31:05.243-07:00</updated><title type='text'>Installing Oracle.....</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_E2ChyGhl2so/SbajkA8jBjI/AAAAAAAAAlU/m8jh85W85V0/s1600-h/screen-capture.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 253px; height: 202px;" src="http://4.bp.blogspot.com/_E2ChyGhl2so/SbajkA8jBjI/AAAAAAAAAlU/m8jh85W85V0/s200/screen-capture.png" alt="" id="BLOGGER_PHOTO_ID_5311612649654650418" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Well, We do it alot and this is no exception. or is it...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1555497785494345295-360386388654267990?l=barrymcgillin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://barrymcgillin.blogspot.com/feeds/360386388654267990/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1555497785494345295&amp;postID=360386388654267990' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/360386388654267990'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/360386388654267990'/><link rel='alternate' type='text/html' href='http://barrymcgillin.blogspot.com/2009/03/installing-oracle.html' title='Installing Oracle.....'/><author><name>Barry McGillin</name><uri>http://www.blogger.com/profile/12215907295974180145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='20' src='http://4.bp.blogspot.com/_E2ChyGhl2so/Sa0bpLVUq3I/AAAAAAAAAcg/RvJ-6Z_DvFM/s1600-R/barry.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_E2ChyGhl2so/SbajkA8jBjI/AAAAAAAAAlU/m8jh85W85V0/s72-c/screen-capture.png' height='72' width='72'/><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1555497785494345295.post-4918967377068887115</id><published>2009-02-27T12:07:00.001-08:00</published><updated>2009-02-27T12:07:43.488-08:00</updated><title type='text'>SQL Developer 1.5.4 coming soon</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;Working through the last issues with SQL Developer 1.5.4.  We've done a lot of work with this to address functionality that people required in the base product and now have translated it to 9 languages.&lt;br/&gt;&lt;ol&gt;&lt;li&gt;English&lt;/li&gt;&lt;li&gt;German&lt;/li&gt;&lt;li&gt;Spanish&lt;/li&gt;&lt;li&gt;French&lt;/li&gt;&lt;li&gt;Italian&lt;/li&gt;&lt;li&gt;Portuguese&lt;/li&gt;&lt;li&gt;Chinese&lt;/li&gt;&lt;li&gt;Simplified Chines&lt;/li&gt;&lt;li&gt;Japanese&lt;/li&gt;&lt;li&gt;Korean&lt;/li&gt;&lt;/ol&gt;Once we are happy with the current builds, we'll be out to users as soon as we can.  I also hope that this is the version to be adopted in the Oracle Database 11GR2 database&lt;br/&gt;&lt;br/&gt;&lt;div class='zemanta-pixie'&gt;&lt;img src='http://img.zemanta.com/pixy.gif?x-id=ed7b4972-f450-4ffb-bf4e-c74d7293eff9' class='zemanta-pixie-img'/&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1555497785494345295-4918967377068887115?l=barrymcgillin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://barrymcgillin.blogspot.com/feeds/4918967377068887115/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1555497785494345295&amp;postID=4918967377068887115' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/4918967377068887115'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/4918967377068887115'/><link rel='alternate' type='text/html' href='http://barrymcgillin.blogspot.com/2009/02/sql-developer-154-coming-soon.html' title='SQL Developer 1.5.4 coming soon'/><author><name>Barry McGillin</name><uri>http://www.blogger.com/profile/12215907295974180145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='20' src='http://4.bp.blogspot.com/_E2ChyGhl2so/Sa0bpLVUq3I/AAAAAAAAAcg/RvJ-6Z_DvFM/s1600-R/barry.png'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1555497785494345295.post-2936747934121066754</id><published>2009-02-27T11:51:00.001-08:00</published><updated>2009-02-27T11:51:37.427-08:00</updated><title type='text'>Image Authoring</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;I'd forgotten about &lt;a href='http://www.gimp.org/'&gt;GIMP&lt;/a&gt;. No, not the one in the movie, the image manipulation one.  Needed to touch up an image for SQL Developer with the correct copyright information and it just works.&lt;a href='http://www.gimp.org/screenshots/#'&gt;&lt;img src='http://www.gimp.org/screenshots/osx_aperture_thumb.jpg' style='max-width: 800px; float: left; margin-top: 10px; margin-bottom: 10px; margin-right: 10px;'/&gt;&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;Take the Splash Screen for SQL Developer.  Rewrite the copyright and  publish. This apps a keeper. :)&lt;br/&gt;&lt;br/&gt;&lt;div class='zemanta-pixie'&gt;&lt;img src='http://img.zemanta.com/pixy.gif?x-id=48f77ef8-9c55-41ae-995c-8a07c183a774' class='zemanta-pixie-img'/&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1555497785494345295-2936747934121066754?l=barrymcgillin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://barrymcgillin.blogspot.com/feeds/2936747934121066754/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1555497785494345295&amp;postID=2936747934121066754' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/2936747934121066754'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/2936747934121066754'/><link rel='alternate' type='text/html' href='http://barrymcgillin.blogspot.com/2009/02/image-authoring.html' title='Image Authoring'/><author><name>Barry McGillin</name><uri>http://www.blogger.com/profile/12215907295974180145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='20' src='http://4.bp.blogspot.com/_E2ChyGhl2so/Sa0bpLVUq3I/AAAAAAAAAcg/RvJ-6Z_DvFM/s1600-R/barry.png'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1555497785494345295.post-6070515357214636941</id><published>2009-02-11T05:13:00.001-08:00</published><updated>2009-02-11T05:33:43.186-08:00</updated><title type='text'>Prague Develop Event.</title><content type='html'>Well, its not as cold as it was in Moscow, but the welcome was just as warm.&lt;br /&gt;We're here in &lt;a href="http://maps.google.co.uk/maps?oe=utf-8&amp;amp;rls=org.mozilla:en-US:official&amp;amp;client=firefox-a&amp;amp;um=1&amp;amp;ie=UTF-8&amp;amp;q=clarion+congress+praha&amp;amp;fb=1&amp;amp;split=1&amp;amp;gl=uk&amp;amp;cid=0,0,3547185574638070874&amp;amp;ei=Oc-SSdy_EqCYNYOcwfAL&amp;amp;sa=X&amp;amp;oi=local_result&amp;amp;resnum=1&amp;amp;ct=image"&gt;Prague &lt;/a&gt;delivering the &lt;a href="http://is.gd/j9U0"&gt;Oracle Develop&lt;/a&gt; event.&lt;br /&gt;&lt;br /&gt;I'm here talking about our new modelling tool.  &lt;a href="http://is.gd/565D"&gt;Oracle SQL Developer&lt;/a&gt; Data Modelling which is available as an &lt;a href="http://is.gd/j9UN"&gt;early adopter release&lt;/a&gt; on OTN.&lt;br /&gt;&lt;br /&gt;&lt;span class="bodycopy"&gt;Oracle SQL Developer Data Modelling is the latest            product offering to join our Oracle Database Tools. SQL Developer Data Modelling has Entity Relationship modeling, Relational (Database            Design), Data Type and Multidimensional modeling, full forward and reverse            engineering and code generation. It includes importing from and exporting            to a variety of sources and targets, provides a variety of formatting            options and validates the models through a predefined set of Design            Rules.&lt;br /&gt;&lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.oracle.com/technology/products/database/sql_developer/images/multi.png"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 200px; height: 152px;" src="http://www.oracle.com/technology/products/database/sql_developer/images/multithmb.png" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span class="bodycopy"&gt;All in all, fills in one of last pieces of the database development cycle allowing us to model our databases before we go ahead and physically lay them out and create them.  My personal favourite is the multidimensional modelling features. &lt;br /&gt;&lt;br /&gt;Years ago, I was involved in a huge implementation of a warehouse which was all defined by hand; the fact tables, the dimensions and all the aggregates.  This was fine at the time, but being able to go the database and extract the structure of it and show it as a model would have been great.  Have a look at the image and the way the fact, dimension and aggregate objects are laid out.&lt;br /&gt;&lt;br /&gt;Anyway,  the talk today was great with loads of questions around how we'd handle Designer, Erwin and other formats, and why we just didn't use Rational or JDeveloper.  There are a lot of answers for this in the &lt;a href="http://www.oracle.com/technology/products/database/sql_developer/files/datamodelingfaq.html"&gt;FAQ&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;For now, we have a couple more hands on labs where the attendees can get their hands on the software and ask questions about what they are doing.&lt;br /&gt;&lt;br /&gt;Download it and try it and if you have questions, ping the forums and we'll help you get going.&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1555497785494345295-6070515357214636941?l=barrymcgillin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://barrymcgillin.blogspot.com/feeds/6070515357214636941/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1555497785494345295&amp;postID=6070515357214636941' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/6070515357214636941'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/6070515357214636941'/><link rel='alternate' type='text/html' href='http://barrymcgillin.blogspot.com/2009/02/prague-develop-event.html' title='Prague Develop Event.'/><author><name>Barry McGillin</name><uri>http://www.blogger.com/profile/12215907295974180145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='20' src='http://4.bp.blogspot.com/_E2ChyGhl2so/Sa0bpLVUq3I/AAAAAAAAAcg/RvJ-6Z_DvFM/s1600-R/barry.png'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1555497785494345295.post-9080215568488308802</id><published>2009-01-27T09:10:00.001-08:00</published><updated>2009-01-27T09:20:29.358-08:00</updated><title type='text'>Moscow Develop Event</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;After several days of visa processing, I'm clear to go to &lt;a target='_blank' href='http://www.oracle.com/events/oracledevelop/moscow/index.html'&gt;Moscow&lt;/a&gt;. Spasiba Mockba!&lt;br/&gt;I'm speaking on Wednesday 4th on our new data modeling tools.  I'm hoping to go through a presentation of the features by demo on the fourth starting with a reverse engineering of a couple of schema to a relational model and abstracting that into a logical model.  I want to show several views and slices of the model.&lt;br/&gt;I also want to show a load of the property management capabilities such as naming conventions to constrain object names.&lt;br/&gt;From there, we can push down and create a physical model, containing the attributes of that model, such as tablespaces, indices and multi dimensional objects.&lt;br/&gt;Lastly, We'll complete the circle and do some DDL Generation.&lt;br/&gt;On Thursday, I have set up two hands-on labs to allow attendees to work through a prescribed text showing much of the same features I'll discuss in the talk.&lt;br/&gt;Technorati Tags: &lt;a rel='tag' href='http://technorati.com/tag/Oracle%20Develop' class='performancingtags'&gt;Oracle Develop&lt;/a&gt;, &lt;a rel='tag' href='http://technorati.com/tag/SQL%20Developer' class='performancingtags'&gt;SQL Developer&lt;/a&gt;, &lt;a rel='tag' href='http://technorati.com/tag/Modeling' class='performancingtags'&gt;Modeling&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1555497785494345295-9080215568488308802?l=barrymcgillin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://barrymcgillin.blogspot.com/feeds/9080215568488308802/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1555497785494345295&amp;postID=9080215568488308802' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/9080215568488308802'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/9080215568488308802'/><link rel='alternate' type='text/html' href='http://barrymcgillin.blogspot.com/2009/01/moscow-develop-event.html' title='Moscow Develop Event'/><author><name>Barry McGillin</name><uri>http://www.blogger.com/profile/12215907295974180145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='20' src='http://4.bp.blogspot.com/_E2ChyGhl2so/Sa0bpLVUq3I/AAAAAAAAAcg/RvJ-6Z_DvFM/s1600-R/barry.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1555497785494345295.post-3389368198680651991</id><published>2009-01-06T01:33:00.000-08:00</published><updated>2009-01-06T01:44:15.561-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='1.5.4'/><category scheme='http://www.blogger.com/atom/ns#' term='SQL Developer'/><category scheme='http://www.blogger.com/atom/ns#' term='1.5.3'/><category scheme='http://www.blogger.com/atom/ns#' term='Oracle Develop'/><title type='text'>Back on the Chain Gang</title><content type='html'>After a great holiday season, its time to get back to the grindstone.  We released SQL Developer 1.5.3 before Christmas which is our first translated release.  Its just japanese right now and we'll be extending that to nine languages in 1.5.4.&lt;br /&gt;The other major part of 1.5.4 I want to sweep up are as many issues as possible from our customers on the forums.  Over the next few weeks, we'll be focusing on locking down as many of these as possible.&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.oracle.com/events/oracledevelop/moscow/index.html"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 172px; height: 134px;" src="http://oracleimg.com/events/oracledevelop/images/develope_banner.gif" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;In terms of conferences, I'm off to Moscow in February as part of the series of&lt;a href="http://www.oracle.com/events/oracledevelop/moscow/index.html"&gt; Oracle Develop&lt;/a&gt; conferences.  I'll be doing a couple of sessions on SQL Developer and hope to get under the covers to show exactly how you can build your own additions to it. I was watching Sue present at UKOUG and it was the one thing that struck me that people were looking for as heads were bobbing around the room.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1555497785494345295-3389368198680651991?l=barrymcgillin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://barrymcgillin.blogspot.com/feeds/3389368198680651991/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1555497785494345295&amp;postID=3389368198680651991' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/3389368198680651991'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/3389368198680651991'/><link rel='alternate' type='text/html' href='http://barrymcgillin.blogspot.com/2009/01/back-on-chain-gang.html' title='Back on the Chain Gang'/><author><name>Barry McGillin</name><uri>http://www.blogger.com/profile/12215907295974180145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='20' src='http://4.bp.blogspot.com/_E2ChyGhl2so/Sa0bpLVUq3I/AAAAAAAAAcg/RvJ-6Z_DvFM/s1600-R/barry.png'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1555497785494345295.post-5908863516209131621</id><published>2008-11-08T04:09:00.001-08:00</published><updated>2008-11-08T04:09:00.888-08:00</updated><title type='text'>Winter is here</title><content type='html'>&lt;a href="http://media.shozu.com/cache/portal/media/5570d0e/16777225"&gt;&lt;img src="http://media.shozu.com/cache/portal/media/5570d0e/16777225_blog" /&gt;&lt;/a&gt;&lt;br/&gt;&lt;p align="right" &gt;&lt;a href="http://www.shozu.com/portal/?utm_source=upload&amp;amp;utm_medium=graphic&amp;amp;utm_campaign=upload_graphic/" target="_blank" &gt;&lt;img src="http://www.shozu.com/resources/messages/logo_blog.gif" alt="Posted by ShoZu" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1555497785494345295-5908863516209131621?l=barrymcgillin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://barrymcgillin.blogspot.com/feeds/5908863516209131621/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1555497785494345295&amp;postID=5908863516209131621' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/5908863516209131621'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/5908863516209131621'/><link rel='alternate' type='text/html' href='http://barrymcgillin.blogspot.com/2008/11/winter-is-here.html' title='Winter is here'/><author><name>Barry McGillin</name><uri>http://www.blogger.com/profile/12215907295974180145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='20' src='http://4.bp.blogspot.com/_E2ChyGhl2so/Sa0bpLVUq3I/AAAAAAAAAcg/RvJ-6Z_DvFM/s1600-R/barry.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1555497785494345295.post-2695721469123380901</id><published>2008-11-08T04:01:00.001-08:00</published><updated>2008-11-08T04:01:43.246-08:00</updated><title type='text'>iPhone blogging</title><content type='html'>While taking a break from 2.0 the iPhone has this cool application called shuzu which lets you blog from the phone.&lt;p align="right" &gt;&lt;a href="http://www.shozu.com/portal/?utm_source=upload&amp;amp;utm_medium=graphic&amp;amp;utm_campaign=upload_graphic/" target="_blank" &gt;&lt;img src="http://www.shozu.com/resources/messages/logo_blog.gif" alt="Posted by ShoZu" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1555497785494345295-2695721469123380901?l=barrymcgillin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://barrymcgillin.blogspot.com/feeds/2695721469123380901/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1555497785494345295&amp;postID=2695721469123380901' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/2695721469123380901'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/2695721469123380901'/><link rel='alternate' type='text/html' href='http://barrymcgillin.blogspot.com/2008/11/iphone-blogging.html' title='iPhone blogging'/><author><name>Barry McGillin</name><uri>http://www.blogger.com/profile/12215907295974180145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='20' src='http://4.bp.blogspot.com/_E2ChyGhl2so/Sa0bpLVUq3I/AAAAAAAAAcg/RvJ-6Z_DvFM/s1600-R/barry.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1555497785494345295.post-358071688412690081</id><published>2008-09-06T14:10:00.000-07:00</published><updated>2008-09-06T14:20:47.889-07:00</updated><title type='text'>Ants in my pants</title><content type='html'>Well, just spent the day playing with Ant adding some beanshell scripts and some other bits and pieces.&lt;br /&gt;&lt;br /&gt;Here in Oracle, we have the ability to translate to 32 languages pretty quickly given we give our translation teams the appropriate file formats.  In SQL Developer, we primarily use three file formats.&lt;br /&gt;&lt;ol&gt;&lt;li&gt;property files&lt;/li&gt;&lt;li&gt;xliff files ( to denote strings in xml)&lt;/li&gt;&lt;li&gt;rts files, home grown strings files we process to java files for inclusion.&lt;/li&gt;&lt;/ol&gt;Anyway, the upshot of all of this is we are currently going through the pain of translating SQLDeveloper because we are present in close to 100 countries around the globe, even antartica. (Yes guys, we saw you).  Translating a tool is an interesting business, both from an operational point of view (how to do it) and when to do it (when in the lifecycle).  We'll come to that over time as we solidify this.&lt;br /&gt;&lt;br /&gt;Anyway, We've decided that we will drop our first translated delivery with our JDeveloper integration.  They normally translate to Japanese, but allows us to work out all the kinks as we go.  This will be called our 1.5.2 release and will only be released as part of JDeveloper.  As soon as we have that completed, We'll put together 1.5.3 which is a translation of the same tool into 9 languages (including yours hopefully)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1555497785494345295-358071688412690081?l=barrymcgillin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://barrymcgillin.blogspot.com/feeds/358071688412690081/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1555497785494345295&amp;postID=358071688412690081' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/358071688412690081'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/358071688412690081'/><link rel='alternate' type='text/html' href='http://barrymcgillin.blogspot.com/2008/09/ants-in-my-pants.html' title='Ants in my pants'/><author><name>Barry McGillin</name><uri>http://www.blogger.com/profile/12215907295974180145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='20' src='http://4.bp.blogspot.com/_E2ChyGhl2so/Sa0bpLVUq3I/AAAAAAAAAcg/RvJ-6Z_DvFM/s1600-R/barry.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1555497785494345295.post-1663075713432689094</id><published>2008-09-02T06:34:00.000-07:00</published><updated>2008-09-02T06:49:43.524-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Openworld'/><category scheme='http://www.blogger.com/atom/ns#' term='Threads'/><category scheme='http://www.blogger.com/atom/ns#' term='Migration'/><category scheme='http://www.blogger.com/atom/ns#' term='SQLDEVELOPER ORACLE'/><title type='text'>Multi Tasking - Men can't do it.</title><content type='html'>But SQL Developer can.  We've spent some time reworking the worksheet for 2.0 to allow several things to happen.&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Allow you to register pre and post statement listeners so you can do things with the code before and after it is run.&lt;/li&gt;&lt;li&gt;Added a tasking framework which handles background tasks to allow the users more immediate control, response and information as they use the tool.&lt;/li&gt;&lt;/ol&gt;The listeners are being integrated into the worksheet and the tasking framework is being used in several places already for 2.0.  The navigator is making use of it as will most things wh&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_E2ChyGhl2so/SL1CzBqjUII/AAAAAAAAASs/ADuD1LHWWs0/s1600-h/taskbar.PNG"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer;" src="http://3.bp.blogspot.com/_E2ChyGhl2so/SL1CzBqjUII/AAAAAAAAASs/ADuD1LHWWs0/s200/taskbar.PNG" alt="" id="BLOGGER_PHOTO_ID_5241418985716797570" border="0" /&gt;&lt;/a&gt;ich take more than a few seconds to complete.&lt;br /&gt;On the bottom of the tool, we have a 'knight Rider' bar showing the task running.&lt;br /&gt;We house these tasks in another dockable window which shows the tasks and allows the user to configure and manage them through out their life before they disappear when the task is complete and the threaded task they represent is gone.&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_E2ChyGhl2so/SL1DNvhk18I/AAAAAAAAAS0/Gl1ggLl6ouw/s1600-h/tasks.PNG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://2.bp.blogspot.com/_E2ChyGhl2so/SL1DNvhk18I/AAAAAAAAAS0/Gl1ggLl6ouw/s200/tasks.PNG" alt="" id="BLOGGER_PHOTO_ID_5241419444703778754" border="0" /&gt;&lt;/a&gt;All of these things, we'll be showing at Open World from the 15th of September so if you're going drop along to a session on base SQL Developer stuff or some of the other Migration or modeling sessions.  You can see whats going on &lt;a href="http://www28.cplan.com/cc208/catalog.jsp?ilc=208-1&amp;amp;ilg=english&amp;amp;isort_sessions=&amp;amp;isort_demos=&amp;amp;isort_exhibitors=&amp;amp;is=yes&amp;amp;ip=%3C%2Fipresentations%3E&amp;amp;isort_sessions_type=&amp;amp;isort_exhibitors_type=&amp;amp;isort_demos_type=&amp;amp;search_sessions=yes&amp;amp;search_exhibitors=yes&amp;amp;icriteria1=+&amp;amp;icriteria2=+&amp;amp;icriteria5=+&amp;amp;icriteria8=Oracle&amp;amp;icriteria9=+&amp;amp;icriteria6=&amp;amp;icriteria3=+&amp;amp;icriteria7=SQL+Developer"&gt;here&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1555497785494345295-1663075713432689094?l=barrymcgillin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://barrymcgillin.blogspot.com/feeds/1663075713432689094/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1555497785494345295&amp;postID=1663075713432689094' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/1663075713432689094'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/1663075713432689094'/><link rel='alternate' type='text/html' href='http://barrymcgillin.blogspot.com/2008/09/multi-tasking-men-cant-do-it.html' title='Multi Tasking - Men can&apos;t do it.'/><author><name>Barry McGillin</name><uri>http://www.blogger.com/profile/12215907295974180145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='20' src='http://4.bp.blogspot.com/_E2ChyGhl2so/Sa0bpLVUq3I/AAAAAAAAAcg/RvJ-6Z_DvFM/s1600-R/barry.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_E2ChyGhl2so/SL1CzBqjUII/AAAAAAAAASs/ADuD1LHWWs0/s72-c/taskbar.PNG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1555497785494345295.post-4325336574918727298</id><published>2008-09-02T06:28:00.000-07:00</published><updated>2008-09-02T06:33:23.441-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='dbms_output sqldeveloper oracle'/><title type='text'>DBMS_OUTPUT from multiple worksheets</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_E2ChyGhl2so/SL0_0KD1ZpI/AAAAAAAAASk/QvBiqEX77zk/s1600-h/dbmsoutput.PNG"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer;" src="http://1.bp.blogspot.com/_E2ChyGhl2so/SL0_0KD1ZpI/AAAAAAAAASk/QvBiqEX77zk/s200/dbmsoutput.PNG" alt="" id="BLOGGER_PHOTO_ID_5241415706615309970" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;While I'm talking today, heres another feature people have been asking for.  Separated DBMS_OUTPUT from the main worksheet.&lt;br /&gt;&lt;br /&gt;This way you can now have several worksheets on the same connection pumping out anything onto dbms_output and it appears nicely in the dockable window.  You can still specify it inline in the code with&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);font-family:courier new;" &gt;set serveroutput on&lt;/span&gt;&lt;br /&gt;and it will appear in the script output window as an alternative.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1555497785494345295-4325336574918727298?l=barrymcgillin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://barrymcgillin.blogspot.com/feeds/4325336574918727298/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1555497785494345295&amp;postID=4325336574918727298' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/4325336574918727298'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/4325336574918727298'/><link rel='alternate' type='text/html' href='http://barrymcgillin.blogspot.com/2008/09/dbmsoutput-from-multiple-worksheets.html' title='DBMS_OUTPUT from multiple worksheets'/><author><name>Barry McGillin</name><uri>http://www.blogger.com/profile/12215907295974180145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='20' src='http://4.bp.blogspot.com/_E2ChyGhl2so/Sa0bpLVUq3I/AAAAAAAAAcg/RvJ-6Z_DvFM/s1600-R/barry.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_E2ChyGhl2so/SL0_0KD1ZpI/AAAAAAAAASk/QvBiqEX77zk/s72-c/dbmsoutput.PNG' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1555497785494345295.post-541185717882213644</id><published>2008-09-02T03:07:00.000-07:00</published><updated>2008-09-02T03:37:10.548-07:00</updated><title type='text'>Do you have odbc or JDBC data?</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_E2ChyGhl2so/SL0Wm6mTGaI/AAAAAAAAASc/jGVqYl2wrAU/s1600-h/jdbc.PNG"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer;" src="http://2.bp.blogspot.com/_E2ChyGhl2so/SL0Wm6mTGaI/AAAAAAAAASc/jGVqYl2wrAU/s320/jdbc.PNG" alt="" id="BLOGGER_PHOTO_ID_5241370399149857186" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;We do. Most of the emails and pings I get are to see if we have a plugin for the migration workbench for this or that, mostly databases we rarely hear from anymore like the paradox's supra's etc&lt;br /&gt;&lt;br /&gt;At Openworld, we're introducing a generic JDBC and ODBC browser and migration extension to allow you to connect to 'any' jdbc source or odbc source and copy your data across to Oracle.&lt;br /&gt;&lt;br /&gt;Right now, we've tried it on postgres and firebird, but there are a lot of others to test too.  This will be GA in the 2.0 timeframe of SQL Developer.&lt;br /&gt;&lt;br /&gt;These connections allow you to view your data in the source database and you can drag your tables into the worksheet kicking off a table migration to that connection.&lt;br /&gt;&lt;br /&gt;Come by and see us at OpenWorld.  I'm doing a session on the Monday about Migration in general and have a couple of customers who have been through the process using SQL Developer and have come to tell their tale to you.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1555497785494345295-541185717882213644?l=barrymcgillin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://barrymcgillin.blogspot.com/feeds/541185717882213644/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1555497785494345295&amp;postID=541185717882213644' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/541185717882213644'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/541185717882213644'/><link rel='alternate' type='text/html' href='http://barrymcgillin.blogspot.com/2008/09/do-you-have-odbc-or-jdbc-data.html' title='Do you have odbc or JDBC data?'/><author><name>Barry McGillin</name><uri>http://www.blogger.com/profile/12215907295974180145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='20' src='http://4.bp.blogspot.com/_E2ChyGhl2so/Sa0bpLVUq3I/AAAAAAAAAcg/RvJ-6Z_DvFM/s1600-R/barry.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_E2ChyGhl2so/SL0Wm6mTGaI/AAAAAAAAASc/jGVqYl2wrAU/s72-c/jdbc.PNG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1555497785494345295.post-7147214556596606894</id><published>2008-05-27T07:53:00.000-07:00</published><updated>2008-05-27T08:02:30.535-07:00</updated><title type='text'>Oracle World and UKOUG</title><content type='html'>One other thing is we're revving up for &lt;a href="http://www.oracle.com/oracleworld"&gt;Oracle world&lt;/a&gt; and &lt;a href="http://www.ukoug.org/"&gt;UKOUG &lt;/a&gt;too, so make sure when you get there that you look us up.  Dont have specific locations, but we're normally in the database campgrounds.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1555497785494345295-7147214556596606894?l=barrymcgillin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://barrymcgillin.blogspot.com/feeds/7147214556596606894/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1555497785494345295&amp;postID=7147214556596606894' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/7147214556596606894'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/7147214556596606894'/><link rel='alternate' type='text/html' href='http://barrymcgillin.blogspot.com/2008/05/oracle-world-and-ukoug.html' title='Oracle World and UKOUG'/><author><name>Barry McGillin</name><uri>http://www.blogger.com/profile/12215907295974180145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='20' src='http://4.bp.blogspot.com/_E2ChyGhl2so/Sa0bpLVUq3I/AAAAAAAAAcg/RvJ-6Z_DvFM/s1600-R/barry.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1555497785494345295.post-5541235984855793901</id><published>2008-05-27T07:46:00.000-07:00</published><updated>2008-05-27T07:53:25.058-07:00</updated><title type='text'>1.5.1 on the horizon</title><content type='html'>Since we released 1.5, we've been busy getting a few issues sorted out for 1.5.1.  Most of these issues, you wont see, but when you do, they are painful.  Here's a working list of what we're up to:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Tightening up NLS/MB issues.&lt;/li&gt;&lt;li&gt;Hardening some connection issues (to do with internal dependencies)&lt;/li&gt;&lt;li&gt;Fixing some migration related issues for our customers to bring their migration projects to close to 100% successful generation.&lt;/li&gt;&lt;li&gt;Making the Check for updates better so we can release patches more easily on this platform.&lt;/li&gt;&lt;/ol&gt;There are a load of other minor things in here, but these are the big ones We want to get out before we get really stuck into the next major release.  Make sure you check out our &lt;a href="http://otn.oracle.com/sqldeveloper"&gt;site &lt;/a&gt;and if you have features you want to see go to the &lt;a href="http://sqldeveloper.oracle.com/"&gt;feature request&lt;/a&gt; pages&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1555497785494345295-5541235984855793901?l=barrymcgillin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://barrymcgillin.blogspot.com/feeds/5541235984855793901/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1555497785494345295&amp;postID=5541235984855793901' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/5541235984855793901'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/5541235984855793901'/><link rel='alternate' type='text/html' href='http://barrymcgillin.blogspot.com/2008/05/151-on-horizon.html' title='1.5.1 on the horizon'/><author><name>Barry McGillin</name><uri>http://www.blogger.com/profile/12215907295974180145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='20' src='http://4.bp.blogspot.com/_E2ChyGhl2so/Sa0bpLVUq3I/AAAAAAAAAcg/RvJ-6Z_DvFM/s1600-R/barry.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1555497785494345295.post-3024784757884380909</id><published>2008-04-24T01:59:00.000-07:00</published><updated>2008-04-24T02:26:20.705-07:00</updated><title type='text'>SQL Developer 1.5 is now Production</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_E2ChyGhl2so/SBBQ2s_6O3I/AAAAAAAAAM4/uftm0zrpy50/s1600-h/5338.PNG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://3.bp.blogspot.com/_E2ChyGhl2so/SBBQ2s_6O3I/AAAAAAAAAM4/uftm0zrpy50/s320/5338.PNG" alt="" id="BLOGGER_PHOTO_ID_5192739271080557426" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;We have just released &lt;a href="http://sqldeveloper.oracle.com"&gt;SQL Developer&lt;/a&gt; as production yesterday.  Its been a long road for getting the functionality into this release and making the whole tool more stable and more usable than any other release.&lt;br /&gt;&lt;br /&gt;Over the next couple of months, we will be building some other cool stuff which we hope to showcase at &lt;a href="http://www.oracle.com/openworld"&gt;Openworld&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1555497785494345295-3024784757884380909?l=barrymcgillin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://barrymcgillin.blogspot.com/feeds/3024784757884380909/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1555497785494345295&amp;postID=3024784757884380909' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/3024784757884380909'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/3024784757884380909'/><link rel='alternate' type='text/html' href='http://barrymcgillin.blogspot.com/2008/04/sql-developer-15-is-now-production.html' title='SQL Developer 1.5 is now Production'/><author><name>Barry McGillin</name><uri>http://www.blogger.com/profile/12215907295974180145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='20' src='http://4.bp.blogspot.com/_E2ChyGhl2so/Sa0bpLVUq3I/AAAAAAAAAcg/RvJ-6Z_DvFM/s1600-R/barry.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_E2ChyGhl2so/SBBQ2s_6O3I/AAAAAAAAAM4/uftm0zrpy50/s72-c/5338.PNG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1555497785494345295.post-6245757598953280288</id><published>2008-04-02T11:32:00.000-07:00</published><updated>2008-04-02T15:32:56.729-07:00</updated><title type='text'>DBDoc your schema</title><content type='html'>Well, we've been working on EA3 and its been worth it.  A sneak peek at this nice feature&lt;br /&gt;You can now right click on a connection and generate a set of DB doc, not unlike Java Doc.  This missed the cut for EA2 but will be in for EA3&lt;br /&gt;&lt;img alt="dbdoc" src="cid:part1.04060506.09090907@oracle.com" height="398" width="398" /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_E2ChyGhl2so/R_PSM5-STbI/AAAAAAAAAMw/Fs_Z6OQ2lds/s1600-h/dbdoc.PNG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://3.bp.blogspot.com/_E2ChyGhl2so/R_PSM5-STbI/AAAAAAAAAMw/Fs_Z6OQ2lds/s320/dbdoc.PNG" alt="" id="BLOGGER_PHOTO_ID_5184718715195903410" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;We will probably make this a little prettier before production but this gives you the general idea.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1555497785494345295-6245757598953280288?l=barrymcgillin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://barrymcgillin.blogspot.com/feeds/6245757598953280288/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1555497785494345295&amp;postID=6245757598953280288' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/6245757598953280288'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/6245757598953280288'/><link rel='alternate' type='text/html' href='http://barrymcgillin.blogspot.com/2008/04/dbdoc-your-schema.html' title='DBDoc your schema'/><author><name>Barry McGillin</name><uri>http://www.blogger.com/profile/12215907295974180145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='20' src='http://4.bp.blogspot.com/_E2ChyGhl2so/Sa0bpLVUq3I/AAAAAAAAAcg/RvJ-6Z_DvFM/s1600-R/barry.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_E2ChyGhl2so/R_PSM5-STbI/AAAAAAAAAMw/Fs_Z6OQ2lds/s72-c/dbdoc.PNG' height='72' width='72'/><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1555497785494345295.post-4825936096842996677</id><published>2008-02-04T14:52:00.001-08:00</published><updated>2008-02-04T14:52:27.926-08:00</updated><title type='text'>SQL Developer 1.5 Early Access.</title><content type='html'>Well, we now have early access 1 out the door.  There are a couple of things that have not made it in yet, like SCM and a few others, but we are releasing updates every few weeks as we harden the product down.  We've done a load of updates, specifically with user requests from the &lt;a  href="http://sqldeveloper.oracle.com"&gt;exchange&lt;/a&gt;.&lt;br&gt; I'll keep this updated as we release each cycle and focus on specific changes to each of the specific areas.&lt;br&gt; &lt;div class="moz-signature"&gt;&lt;br&gt; &lt;/div&gt; &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1555497785494345295-4825936096842996677?l=barrymcgillin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://barrymcgillin.blogspot.com/feeds/4825936096842996677/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1555497785494345295&amp;postID=4825936096842996677' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/4825936096842996677'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/4825936096842996677'/><link rel='alternate' type='text/html' href='http://barrymcgillin.blogspot.com/2008/02/sql-developer-15-early-access.html' title='SQL Developer 1.5 Early Access.'/><author><name>Barry McGillin</name><uri>http://www.blogger.com/profile/12215907295974180145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='20' src='http://4.bp.blogspot.com/_E2ChyGhl2so/Sa0bpLVUq3I/AAAAAAAAAcg/RvJ-6Z_DvFM/s1600-R/barry.png'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1555497785494345295.post-2853101780810733835</id><published>2007-11-19T09:44:00.001-08:00</published><updated>2007-11-19T12:27:59.712-08:00</updated><title type='text'>Oracle Open World</title><content type='html'>Well,  here's another successful &lt;a href="http://www.oracle.com/openworld/index.html"&gt;Openworld&lt;/a&gt; conference.  We had several&lt;br /&gt;sessions on SQL Developer from the Hands on session, Sue Harper and I&lt;br /&gt;did on Monday, through to the Migration session I did on Wednesday,&lt;br /&gt;detailing how to consolidate your database infrastructure under an&lt;br /&gt;Oracle Database.&lt;p&gt;Sue and Kris also did papers on SQL Developer.  The first was an&lt;br /&gt;introductory paper and the second was an advanced paper. &lt;/p&gt;&lt;p&gt;For me, meeting our customers is great and really makes you realize how&lt;br /&gt;much you take for granted as you live in the space all the time.  I&lt;br /&gt;think over the next few posts, I want to try and get more information&lt;br /&gt;out about extensions, Migration Plugins, doing a migration and many more.&lt;/p&gt;&lt;p&gt;For now, though, this is a wrap. The next post will be technical, but I&lt;br /&gt;haven't decided on what yet!!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1555497785494345295-2853101780810733835?l=barrymcgillin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://barrymcgillin.blogspot.com/feeds/2853101780810733835/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1555497785494345295&amp;postID=2853101780810733835' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/2853101780810733835'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/2853101780810733835'/><link rel='alternate' type='text/html' href='http://barrymcgillin.blogspot.com/2007/11/oracle-open-world.html' title='Oracle Open World'/><author><name>Barry McGillin</name><uri>http://www.blogger.com/profile/12215907295974180145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='20' src='http://4.bp.blogspot.com/_E2ChyGhl2so/Sa0bpLVUq3I/AAAAAAAAAcg/RvJ-6Z_DvFM/s1600-R/barry.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1555497785494345295.post-3293416919069064202</id><published>2007-10-24T08:55:00.000-07:00</published><updated>2007-10-24T10:36:02.310-07:00</updated><title type='text'>New Oracle Wiki</title><content type='html'>There is now a new  "Official" &lt;a href="http://wiki.oracle.com/"&gt;Oracle wiki&lt;/a&gt; out there.  This is pretty neat as it lets Oracle employees and everyone else to collaborate together.  This will be cool from my point of view since we deal with &lt;a href="http://www.oracle.com/technology/products/database/sql_developer/index.html"&gt;SQL Developer&lt;/a&gt; and the &lt;a href="http://www.oracle.com/technology/tech/migration//workbench/index_sqldev_omwb.html"&gt;Oracle Migration Workbench&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;The point of all this is that normally the most interaction we have is either through the forum (&lt;a href="http://forums.oracle.com/forums/forum.jspa?forumID=260"&gt;SQL Developer&lt;/a&gt; and &lt;a href="http://forums.oracle.com/forums/forum.jspa?forumID=1"&gt;Migration Workbench&lt;/a&gt;) or through &lt;a href="http://www.oracle.com/support/index.html"&gt;Support&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Now we have the ability to add information about product and drop in loads of ideas, solutions and best practices from everyone.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1555497785494345295-3293416919069064202?l=barrymcgillin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://barrymcgillin.blogspot.com/feeds/3293416919069064202/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1555497785494345295&amp;postID=3293416919069064202' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/3293416919069064202'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/3293416919069064202'/><link rel='alternate' type='text/html' href='http://barrymcgillin.blogspot.com/2007/10/new-oracle-wiki.html' title='New Oracle Wiki'/><author><name>Barry McGillin</name><uri>http://www.blogger.com/profile/12215907295974180145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='20' src='http://4.bp.blogspot.com/_E2ChyGhl2so/Sa0bpLVUq3I/AAAAAAAAAcg/RvJ-6Z_DvFM/s1600-R/barry.png'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1555497785494345295.post-7056914339010338936</id><published>2007-10-17T13:47:00.000-07:00</published><updated>2007-10-17T13:49:41.973-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Migration Workbench SQL Developer'/><title type='text'>Forum posts and questions</title><content type='html'>One of the things I do quite a lot of is monitor the forums (fora?) for both &lt;a href="http://forums.oracle.com/forums/forum.jspa?forumID=260&amp;amp;start=0"&gt;SQL Developer&lt;/a&gt; and the &lt;a href="http://forums.oracle.com/forums/forum.jspa?forumID=1&amp;amp;start=0"&gt;Migration Workbench&lt;/a&gt;.  Some of the features we're putting together should appear here in different forms as I get up and running with this a bit more. :)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1555497785494345295-7056914339010338936?l=barrymcgillin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://barrymcgillin.blogspot.com/feeds/7056914339010338936/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1555497785494345295&amp;postID=7056914339010338936' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/7056914339010338936'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/7056914339010338936'/><link rel='alternate' type='text/html' href='http://barrymcgillin.blogspot.com/2007/10/forum-posts-and-questions.html' title='Forum posts and questions'/><author><name>Barry McGillin</name><uri>http://www.blogger.com/profile/12215907295974180145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='20' src='http://4.bp.blogspot.com/_E2ChyGhl2so/Sa0bpLVUq3I/AAAAAAAAAcg/RvJ-6Z_DvFM/s1600-R/barry.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1555497785494345295.post-2940981156458464658</id><published>2007-10-17T13:22:00.000-07:00</published><updated>2007-10-23T03:22:16.633-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='TABLE EDIT ORACLE SQLDEVLOPER'/><title type='text'>Editing data in big tables</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_E2ChyGhl2so/RxZxOssFo1I/AAAAAAAAAAM/B_DnkFToiWM/s1600-h/single+edit.PNG"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer;" src="http://4.bp.blogspot.com/_E2ChyGhl2so/RxZxOssFo1I/AAAAAAAAAAM/B_DnkFToiWM/s320/single+edit.PNG" alt="" id="BLOGGER_PHOTO_ID_5122406123508704082" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;I saw this floating around the forums over the last few days and it's one of those things that are more of an annoyance than anything else.  Consider having a table with 100 columns that you want to edit a row of data for.   Well, now you can do it in the single record view which has been remodeled to size properly for any table up to the oracle limit.&lt;br /&gt;&lt;br /&gt;This example shows a table of about 100 odd columns ( I got tired adding them thru the table create dialog or we would have more)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1555497785494345295-2940981156458464658?l=barrymcgillin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://barrymcgillin.blogspot.com/feeds/2940981156458464658/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1555497785494345295&amp;postID=2940981156458464658' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/2940981156458464658'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/2940981156458464658'/><link rel='alternate' type='text/html' href='http://barrymcgillin.blogspot.com/2007/10/editing-data-in-big-tables.html' title='Editing data in big tables'/><author><name>Barry McGillin</name><uri>http://www.blogger.com/profile/12215907295974180145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='20' src='http://4.bp.blogspot.com/_E2ChyGhl2so/Sa0bpLVUq3I/AAAAAAAAAcg/RvJ-6Z_DvFM/s1600-R/barry.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_E2ChyGhl2so/RxZxOssFo1I/AAAAAAAAAAM/B_DnkFToiWM/s72-c/single+edit.PNG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1555497785494345295.post-1630739614963687094</id><published>2007-10-17T13:16:00.000-07:00</published><updated>2007-10-17T13:45:36.316-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SQLDEVELOPER ORACLE'/><title type='text'>Now We're Blogging</title><content type='html'>Here we are now. Bloggin.&lt;br /&gt;I've been able to stay buried in code for long enough and now I have to publish.  Well, I am the development manager for &lt;a href="http://sqldeveloper.oracle.com/"&gt;SQL Developer&lt;/a&gt; and I hope some of the stuff we post here should be useful over time.&lt;br /&gt;B&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1555497785494345295-1630739614963687094?l=barrymcgillin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://barrymcgillin.blogspot.com/feeds/1630739614963687094/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1555497785494345295&amp;postID=1630739614963687094' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/1630739614963687094'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1555497785494345295/posts/default/1630739614963687094'/><link rel='alternate' type='text/html' href='http://barrymcgillin.blogspot.com/2007/10/now-were-blogging.html' title='Now We&apos;re Blogging'/><author><name>Barry McGillin</name><uri>http://www.blogger.com/profile/12215907295974180145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='20' src='http://4.bp.blogspot.com/_E2ChyGhl2so/Sa0bpLVUq3I/AAAAAAAAAcg/RvJ-6Z_DvFM/s1600-R/barry.png'/></author><thr:total>0</thr:total></entry></feed>
