<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Learning is not a spectator sport</title>
	<atom:link href="http://connormcdonald.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://connormcdonald.wordpress.com</link>
	<description>Connor McDonald&#039;s Oracle blog</description>
	<lastBuildDate>Mon, 20 Feb 2012 12:19:46 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='connormcdonald.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>Learning is not a spectator sport</title>
		<link>http://connormcdonald.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://connormcdonald.wordpress.com/osd.xml" title="Learning is not a spectator sport" />
	<atom:link rel='hub' href='http://connormcdonald.wordpress.com/?pushpress=hub'/>
		<item>
		<title>Perth AUSOUG meeting</title>
		<link>http://connormcdonald.wordpress.com/2012/02/20/perth-ausoug-meeting/</link>
		<comments>http://connormcdonald.wordpress.com/2012/02/20/perth-ausoug-meeting/#comments</comments>
		<pubDate>Mon, 20 Feb 2012 12:19:41 +0000</pubDate>
		<dc:creator>connormcdonald</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">https://connormcdonald.wordpress.com/?p=74</guid>
		<description><![CDATA[I’ll be doing a talk on Flashback on Feb 29.&#160; Details below – hope to see you there. &#160; Where: Oracle Australia: Level 2, 66 Kings Park Road, West Perth When: Wednesday, February 29, 2012. Breakfast starts 7:30am, and the talk from 8-9am RSVP: By RSVP Sunday 26th February 5pm by emailing vicepresident.wa@ausoug.org.au Cost: Free [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=connormcdonald.wordpress.com&amp;blog=492327&amp;post=74&amp;subd=connormcdonald&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I’ll be doing a talk on Flashback on Feb 29.&#160; Details below – hope to see you there.</p>
<p>&#160;</p>
<p>Where: Oracle Australia: Level 2, 66 Kings Park Road, West Perth</p>
<p>When: Wednesday, February 29, 2012. Breakfast starts 7:30am, and the talk from 8-9am</p>
<p>RSVP: By RSVP Sunday 26th February 5pm by emailing vicepresident.wa@ausoug.org.au</p>
<p>Cost: Free to all AUSOUG members. Ticket parking on Walker St, just off Kings Park Road, or catch the Red CAT, with a short walk from corner of Outram/Ord.</p>
<p>Abstract &#8211; Flashback:   <br />We have all heard the term &quot;adrenalin rush&quot;.&#160; It comes about 3 seconds after you press the Commit button and you realise that you probably needed to have a WHERE clause on that &quot;delete all rows from the SALES table&quot; SQL statement.&#160; Or it might come just after you run &quot;drop table&quot; on the Production database, when you were just so sure that you were logged onto the Test system.&#160; This session will discuss how you can use the FLASHBACK features in 10g and 11g to overcome this uniquely human condition</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/connormcdonald.wordpress.com/74/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/connormcdonald.wordpress.com/74/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/connormcdonald.wordpress.com/74/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/connormcdonald.wordpress.com/74/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/connormcdonald.wordpress.com/74/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/connormcdonald.wordpress.com/74/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/connormcdonald.wordpress.com/74/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/connormcdonald.wordpress.com/74/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/connormcdonald.wordpress.com/74/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/connormcdonald.wordpress.com/74/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/connormcdonald.wordpress.com/74/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/connormcdonald.wordpress.com/74/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/connormcdonald.wordpress.com/74/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/connormcdonald.wordpress.com/74/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=connormcdonald.wordpress.com&amp;blog=492327&amp;post=74&amp;subd=connormcdonald&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://connormcdonald.wordpress.com/2012/02/20/perth-ausoug-meeting/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/2903ecfd61caf221b8b8d5df39962891?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Connor McDonald</media:title>
		</media:content>
	</item>
		<item>
		<title>Calling all Oracle Tasmanians :-)</title>
		<link>http://connormcdonald.wordpress.com/2012/02/20/calling-all-oracle-tasmanians/</link>
		<comments>http://connormcdonald.wordpress.com/2012/02/20/calling-all-oracle-tasmanians/#comments</comments>
		<pubDate>Mon, 20 Feb 2012 12:17:34 +0000</pubDate>
		<dc:creator>connormcdonald</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">https://connormcdonald.wordpress.com/?p=72</guid>
		<description><![CDATA[I’m in Hobart Tasmania for a half day on Monday (Feb 29).&#160; If you’re in town, please drop in and say Hi – should be a fun morning Here is the agenda 09:00 &#8211; 09:15 am General introduction 09:15 &#8211; 10:15 am Presentation &#8211; Diary of an 11.2 upgrade 10:15 &#8211; 10:30 am Morning tea [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=connormcdonald.wordpress.com&amp;blog=492327&amp;post=72&amp;subd=connormcdonald&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I’m in Hobart Tasmania for a half day on Monday (Feb 29).&#160; If you’re in town, please drop in and say Hi – should be a fun morning</p>
<p>Here is the agenda</p>
<p>09:00 &#8211; 09:15 am General introduction</p>
<p>09:15 &#8211; 10:15 am Presentation &#8211; Diary of an 11.2 upgrade</p>
<p>10:15 &#8211; 10:30 am Morning tea</p>
<p>10:30 &#8211; 11:30 am Presentation &#8211; Optimizer stats strategies &#8211; a fresh approach</p>
<p>11:30 &#8211; 12:30 pm Presentation &#8211; Miscellaneous SQL features</p>
<p>12:30 – 01:30 pm Lunch, general questions and networking</p>
<p>Morning tea and a&#160; light lunch will be provided so it would be very much appreciated if you could RSVP so we can correctly cater for the event by email to <a href="mailto:president.tas@ausoug.org.au">president.tas@ausoug.org.au</a></p>
<p>&#160;</p>
<p>See you there !</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/connormcdonald.wordpress.com/72/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/connormcdonald.wordpress.com/72/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/connormcdonald.wordpress.com/72/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/connormcdonald.wordpress.com/72/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/connormcdonald.wordpress.com/72/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/connormcdonald.wordpress.com/72/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/connormcdonald.wordpress.com/72/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/connormcdonald.wordpress.com/72/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/connormcdonald.wordpress.com/72/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/connormcdonald.wordpress.com/72/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/connormcdonald.wordpress.com/72/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/connormcdonald.wordpress.com/72/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/connormcdonald.wordpress.com/72/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/connormcdonald.wordpress.com/72/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=connormcdonald.wordpress.com&amp;blog=492327&amp;post=72&amp;subd=connormcdonald&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://connormcdonald.wordpress.com/2012/02/20/calling-all-oracle-tasmanians/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/2903ecfd61caf221b8b8d5df39962891?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Connor McDonald</media:title>
		</media:content>
	</item>
		<item>
		<title>MOS&#8211;the brave new world</title>
		<link>http://connormcdonald.wordpress.com/2012/02/02/mosthe-brave-new-world/</link>
		<comments>http://connormcdonald.wordpress.com/2012/02/02/mosthe-brave-new-world/#comments</comments>
		<pubDate>Thu, 02 Feb 2012 13:28:23 +0000</pubDate>
		<dc:creator>connormcdonald</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">https://connormcdonald.wordpress.com/?p=70</guid>
		<description><![CDATA[Its been a long hard painful road…. But finally, we no longer have to ensure that Flash-based mistake that was unleased onto the world a few years back I freely admit that I’ve been a scathing critic of the MOS flash interface, both on newsgroups and internally via feedback to the support team themselves, and [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=connormcdonald.wordpress.com&amp;blog=492327&amp;post=70&amp;subd=connormcdonald&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Its been a long hard painful road….</p>
<p>But finally, we no longer have to ensure that Flash-based mistake that was unleased onto the world a few years back <img style="border-style:none;" class="wlEmoticon wlEmoticon-smile" alt="Smile" src="http://connormcdonald.files.wordpress.com/2012/02/wlemoticon-smile.png" /></p>
<p>I freely admit that I’ve been a scathing critic of the MOS flash interface, both on newsgroups and internally via feedback to the support team themselves, and to be honest, I thought that this would all be falling on deaf ears.</p>
<p>So I’m happy to say that somewhere inside the organisation, people were obviously listening to myself (and the many others), because we finally have an interface that looks promising and at first usage, seems functional and practical.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/connormcdonald.wordpress.com/70/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/connormcdonald.wordpress.com/70/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/connormcdonald.wordpress.com/70/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/connormcdonald.wordpress.com/70/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/connormcdonald.wordpress.com/70/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/connormcdonald.wordpress.com/70/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/connormcdonald.wordpress.com/70/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/connormcdonald.wordpress.com/70/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/connormcdonald.wordpress.com/70/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/connormcdonald.wordpress.com/70/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/connormcdonald.wordpress.com/70/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/connormcdonald.wordpress.com/70/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/connormcdonald.wordpress.com/70/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/connormcdonald.wordpress.com/70/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=connormcdonald.wordpress.com&amp;blog=492327&amp;post=70&amp;subd=connormcdonald&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://connormcdonald.wordpress.com/2012/02/02/mosthe-brave-new-world/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/2903ecfd61caf221b8b8d5df39962891?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Connor McDonald</media:title>
		</media:content>

		<media:content url="http://connormcdonald.files.wordpress.com/2012/02/wlemoticon-smile.png" medium="image">
			<media:title type="html">Smile</media:title>
		</media:content>
	</item>
		<item>
		<title>UKOUG&#8211;feedback from attendees</title>
		<link>http://connormcdonald.wordpress.com/2012/02/02/ukougfeedback-from-attendees/</link>
		<comments>http://connormcdonald.wordpress.com/2012/02/02/ukougfeedback-from-attendees/#comments</comments>
		<pubDate>Thu, 02 Feb 2012 13:23:10 +0000</pubDate>
		<dc:creator>connormcdonald</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">https://connormcdonald.wordpress.com/?p=67</guid>
		<description><![CDATA[Just a short note to say thank you to anyone that took the time to score, rate and comment on my presentations at the UKOUG this year.&#160; Whether you loved my talks, or hated my talks, I’m always flattered by anyone that takes the time to give the feedback that all speakers desire in order [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=connormcdonald.wordpress.com&amp;blog=492327&amp;post=67&amp;subd=connormcdonald&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Just a short note to say thank you to anyone that took the time to score, rate and comment on my presentations at the UKOUG this year.&#160; Whether you loved my talks, or hated my talks, I’m always flattered by anyone that takes the time to give the feedback that all speakers desire in order to better cater toward the preferences of the attendees at conferences.&#160; After all, its the attendees that are paying the money – they deserve the best that we can give.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/connormcdonald.wordpress.com/67/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/connormcdonald.wordpress.com/67/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/connormcdonald.wordpress.com/67/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/connormcdonald.wordpress.com/67/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/connormcdonald.wordpress.com/67/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/connormcdonald.wordpress.com/67/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/connormcdonald.wordpress.com/67/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/connormcdonald.wordpress.com/67/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/connormcdonald.wordpress.com/67/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/connormcdonald.wordpress.com/67/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/connormcdonald.wordpress.com/67/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/connormcdonald.wordpress.com/67/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/connormcdonald.wordpress.com/67/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/connormcdonald.wordpress.com/67/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=connormcdonald.wordpress.com&amp;blog=492327&amp;post=67&amp;subd=connormcdonald&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://connormcdonald.wordpress.com/2012/02/02/ukougfeedback-from-attendees/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/2903ecfd61caf221b8b8d5df39962891?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Connor McDonald</media:title>
		</media:content>
	</item>
		<item>
		<title>Updating primary keys and triggers</title>
		<link>http://connormcdonald.wordpress.com/2012/01/22/updating-primary-keys-and-triggers/</link>
		<comments>http://connormcdonald.wordpress.com/2012/01/22/updating-primary-keys-and-triggers/#comments</comments>
		<pubDate>Sun, 22 Jan 2012 13:19:39 +0000</pubDate>
		<dc:creator>connormcdonald</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">https://connormcdonald.wordpress.com/?p=65</guid>
		<description><![CDATA[I recently came across an example where someone wanted to update primary keys with an INSTEAD-OF trigger (on a view).&#160; It can be done, but I wanted to demonstrate that you need to take extreme care, because you can get some problems you might not have forseen. If you choose to allow primary key updates, [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=connormcdonald.wordpress.com&amp;blog=492327&amp;post=65&amp;subd=connormcdonald&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I recently came across an example where someone wanted to update primary keys with an INSTEAD-OF trigger (on a view).&#160; It <strong><em>can</em></strong> be done, but I wanted to demonstrate that you need to take extreme care, because you can get some problems you might not have forseen.</p>
<p>If you choose to allow primary key updates, then you&#8217;ve pretty much got two options:</p>
<p><strong>1) &quot;simple update&quot;</strong></p>
<p>The incoming SQL is say:</p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160; update &#8230;</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160; set&#160;&#160; col7 = :new.col7</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160; where &#8230;</font></p>
<p>and the instead-of trigger takes a &quot;global&quot; approach, ie, all columns</p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160; update &#8230;</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160; set&#160;&#160; pk = :new.pk,</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; col1 = :new.col1,</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; col2 = :new.col2</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160; where &#8230;</font></p>
<p>where the column list includes the primary keys&#8230;</p>
<p>The problem here is that even an update of a primary to the same value, is still an update to the primary key &#8211; which means increased locking for any child tables.&#160; It means a pretty careful review of any foreign keys, and associated foreign key indexes.</p>
<p><strong>2) &quot;conditional update&quot;</strong></p>
<p>The instead-of trigger checks to see if the PK columns are being altered, and only includes them if appropriate</p>
<p>&#160;&#160;&#160;&#160;&#160;&#160; <font face="Courier New"> if <img src='http://s1.wp.com/wp-includes/images/smilies/icon_surprised.gif' alt=':o' class='wp-smiley' /> ld.pk != :new.pk then</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; update &#8230;</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; set&#160;&#160; pk = :new.pk,</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; col1 = :new.col1,</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; col2 = :new.col2</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; where &#8230;</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160; else</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; update &#8230;</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; set&#160;&#160; col1 = :new.col1,</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; col2 = :new.col2</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; where &#8230;</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160; end if;</font></p>
<p>Still challenges here &#8211; because a set operation has now become a row-by-row operation&#8230;.Consider the following example:</p>
<p>&#160;&#160;&#160;&#160;&#160;&#160;&#160; <font face="Courier New">SQL&gt; create table T ( x number primary key, y date );</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160; Table created.</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160; SQL&gt; insert into T values (1,sysdate);</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160; 1 row created.</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160; SQL&gt; insert into T values (2,sysdate);</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160; 1 row created.</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160; SQL&gt; insert into T values (3,sysdate);</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160; 1 row created.</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160; SQL&gt; insert into T values (4,sysdate);</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160; 1 row created.</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160; SQL&gt; create or replace</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; 2&#160; view V as select * from T;</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160; View created.</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160; SQL&gt; create or replace</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; 2&#160; trigger TRIG instead of update on V</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; 3&#160; for each row</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; 4&#160; begin</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; 5&#160;&#160;&#160; update T</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; 6&#160;&#160;&#160; set x = :new.x</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; 7&#160;&#160;&#160; where x = <img src='http://s1.wp.com/wp-includes/images/smilies/icon_surprised.gif' alt=':o' class='wp-smiley' /> ld.x;</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; 8&#160; end;</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; 9&#160; /</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160; Trigger created.</font></p>
<p>That all seems straightforward enough &#8211; but now we&#8217;ll compare updates on the base table and view&#8230;</p>
<p>&#160;&#160;&#160;&#160;&#160;&#160;&#160; <font face="Courier New">SQL&gt; update T set x = x + 1;</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160; 4 rows updated.</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160; SQL&gt; roll;</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160; Rollback complete.</font></p>
<p>No problems there &#8211; each primary key was incremented by 1, and then oracle ensured statement level integrity, ie, no duplicates</p>
<p>Now lets try the exact same operation on our view</p>
<p>&#160;&#160;&#160;&#160;&#160;&#160;&#160; <font face="Courier New">SQL&gt; update V set x = x + 1;</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160; update V set x = x + 1</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; *</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160; ERROR at line 1:</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160; ORA-00001: unique constraint (SYS_C00177683) violated</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160; ORA-06512: at &quot;TRIG&quot;, line 2</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160; ORA-04088: error during execution of trigger TRIG&#8217;</font></p>
<p>Uh oh&#8230;.ker splat !</p>
<p>That&#8217;s actually a best case scenario &#8211; because at least the thing crashed.&#160; Things can get really gnarly once you start doing primary key updates across tables. For example:</p>
<p>&#160;&#160;&#160;&#160;&#160;&#160; <font face="Courier New"> SQL&gt; create table PARENT ( p number primary key );</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160; Table created.</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160; SQL&gt; create table CHILD ( f_p number constraint FK references PARENT );</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160; Table created.</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160; SQL&gt; insert into PARENT values (1);</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160; 1 row created.</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160; SQL&gt; insert into PARENT values (2);</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160; 1 row created.</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160; SQL&gt; insert into PARENT values (3);</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160; 1 row created.</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160; SQL&gt; insert into CHILD&#160; values (1);</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160; 1 row created.</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160; SQL&gt; insert into CHILD&#160; values (2);</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160; 1 row created.</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160; SQL&gt; insert into CHILD&#160; values (3);</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160; 1 row created.</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160; SQL&gt; create or replace</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; 2&#160; trigger TRIG after update on PARENT</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; 3&#160; for each row</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; 4&#160; begin</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; 5&#160;&#160;&#160; update CHILD set f_p = :new.p where f_p = <img src='http://s1.wp.com/wp-includes/images/smilies/icon_surprised.gif' alt=':o' class='wp-smiley' /> ld.p;</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; 6&#160; end;</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; 7&#160; /</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160; Trigger created.</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160; SQL&gt; UPDATE PARENT SET p = p+1;</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160; 3 rows updated.</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160; SQL&gt; select * from parent;</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; P</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160; &#8212;&#8212;&#8212;-</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; 2</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; 3</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; 4</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160; SQL&gt; select * from child;</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; F_P</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160; &#8212;&#8212;&#8212;-</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; 4</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; 4</font></p>
<p><font face="Courier New">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; 4</font></p>
<p>Nothing crashed &#8211; but we totally corrupted the child table.&#160; This last example is actually also contained in the standard Oracle docs.</p>
<p>And you also have to really ask the question &#8211; who or what is updating a primary key ?&#160; That&#8217;s just a bad idea, triggers or not.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/connormcdonald.wordpress.com/65/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/connormcdonald.wordpress.com/65/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/connormcdonald.wordpress.com/65/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/connormcdonald.wordpress.com/65/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/connormcdonald.wordpress.com/65/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/connormcdonald.wordpress.com/65/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/connormcdonald.wordpress.com/65/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/connormcdonald.wordpress.com/65/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/connormcdonald.wordpress.com/65/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/connormcdonald.wordpress.com/65/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/connormcdonald.wordpress.com/65/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/connormcdonald.wordpress.com/65/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/connormcdonald.wordpress.com/65/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/connormcdonald.wordpress.com/65/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=connormcdonald.wordpress.com&amp;blog=492327&amp;post=65&amp;subd=connormcdonald&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://connormcdonald.wordpress.com/2012/01/22/updating-primary-keys-and-triggers/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/2903ecfd61caf221b8b8d5df39962891?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Connor McDonald</media:title>
		</media:content>
	</item>
		<item>
		<title>UKOUG day 3</title>
		<link>http://connormcdonald.wordpress.com/2011/12/28/ukoug-day-3/</link>
		<comments>http://connormcdonald.wordpress.com/2011/12/28/ukoug-day-3/#comments</comments>
		<pubDate>Wed, 28 Dec 2011 12:15:30 +0000</pubDate>
		<dc:creator>connormcdonald</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">https://connormcdonald.wordpress.com/?p=63</guid>
		<description><![CDATA[Today was a bumper day for content. Day 3 started with Doug Burns taking the p*ss out my presentation style…The cheek of the man ! &#160; All in good fun, although Doug is such a sensitive soul, the temptation to mess with him and claim offense was very very high.&#160; He gave a great talk [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=connormcdonald.wordpress.com&amp;blog=492327&amp;post=63&amp;subd=connormcdonald&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Today was a bumper day for content.</p>
<p>Day 3 started with Doug Burns taking the p*ss out my presentation style…The cheek of the man ! <img style="border-style:none;" class="wlEmoticon wlEmoticon-smile" alt="Smile" src="http://connormcdonald.files.wordpress.com/2011/12/wlemoticon-smile3.png" />&#160; All in good fun, although Doug is such a sensitive soul, the temptation to mess with him and claim offense was very very high.&#160; He gave a great talk on statistics on partitioned objects, which was very relevant given my client’s recent embarkation on a new data warehouse.</p>
<p>Then I ran back and forth between presentations on indexes and memory – its a tough call when you want to see two presenters, but you also dont want to be one of those rude people that leaves halfway through.&#160; I opted for the “sneak out when presenter turns their back” option, and seemed to get away with it.</p>
<p>Harald van Breederrode (<a title="http://prutser.wordpress.com/" href="http://prutser.wordpress.com/">http://prutser.wordpress.com/</a>) gave a great talk on smart flash cache in Oracle.&#160; Unfortunately we are AIX, so its of limited use for us currently, but still a cool piece of technology.&#160; For those who don’t know, he’s legally blind, but still knows more about Oracle than just about anyone on the planet…astounding.</p>
<p>My final talk for the conference was on Optimizer stats, which is really a light hearted way of telling people to take more care and more time with their stats, and they’ll be amazed at the benefits they will get.&#160; I did this talk on Sunday as well – in front of optimizer boss Maria Colgan – so hopefully any of my gentle digs at the optimizer were well received.&#160; Of course, if not, then tough…I’ll always be a ranter <img style="border-style:none;" class="wlEmoticon wlEmoticon-smile" alt="Smile" src="http://connormcdonald.files.wordpress.com/2011/12/wlemoticon-smile3.png" /></p>
<p>And that was about the size of it….next stop was Birmingham airport, and then a glorious 20 hours on a plane back to Perth.</p>
<p>If anyone cannot locate the slides for my talks, please drop me a line and I’lll send you them.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/connormcdonald.wordpress.com/63/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/connormcdonald.wordpress.com/63/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/connormcdonald.wordpress.com/63/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/connormcdonald.wordpress.com/63/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/connormcdonald.wordpress.com/63/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/connormcdonald.wordpress.com/63/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/connormcdonald.wordpress.com/63/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/connormcdonald.wordpress.com/63/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/connormcdonald.wordpress.com/63/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/connormcdonald.wordpress.com/63/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/connormcdonald.wordpress.com/63/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/connormcdonald.wordpress.com/63/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/connormcdonald.wordpress.com/63/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/connormcdonald.wordpress.com/63/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=connormcdonald.wordpress.com&amp;blog=492327&amp;post=63&amp;subd=connormcdonald&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://connormcdonald.wordpress.com/2011/12/28/ukoug-day-3/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/2903ecfd61caf221b8b8d5df39962891?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Connor McDonald</media:title>
		</media:content>

		<media:content url="http://connormcdonald.files.wordpress.com/2011/12/wlemoticon-smile3.png" medium="image">
			<media:title type="html">Smile</media:title>
		</media:content>

		<media:content url="http://connormcdonald.files.wordpress.com/2011/12/wlemoticon-smile3.png" medium="image">
			<media:title type="html">Smile</media:title>
		</media:content>
	</item>
		<item>
		<title>UKOUG day 2</title>
		<link>http://connormcdonald.wordpress.com/2011/12/28/ukoug-day-2/</link>
		<comments>http://connormcdonald.wordpress.com/2011/12/28/ukoug-day-2/#comments</comments>
		<pubDate>Wed, 28 Dec 2011 12:05:55 +0000</pubDate>
		<dc:creator>connormcdonald</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">https://connormcdonald.wordpress.com/?p=60</guid>
		<description><![CDATA[Firstly, I hope everyone had a great Christmas…I took a few weeks off in December which explains the blog hiatus…but back to the grind stone now Well, day 2 started much like day 1….4am the internal body clock told me to get up, and thus I did some work on my slides, and then promptly [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=connormcdonald.wordpress.com&amp;blog=492327&amp;post=60&amp;subd=connormcdonald&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Firstly, I hope everyone had a great Christmas…I took a few weeks off in December which explains the blog hiatus…but back to the grind stone now <img style="border-style:none;" class="wlEmoticon wlEmoticon-smile" alt="Smile" src="http://connormcdonald.files.wordpress.com/2011/12/wlemoticon-smile2.png" /></p>
<p>Well, day 2 started much like day 1….4am the internal body clock told me to get up, and thus I did some work on my slides, and then promptly fell back to sleep and missed the first session on the morning.</p>
<p>I went to Alex’s (<a title="http://nuijten.blogspot.com/" href="http://nuijten.blogspot.com/">http://nuijten.blogspot.com/</a>) presentation on Analytics, a personal favourite topic of mine, since I’ve done talks myself on it, and I always like seeing someone else’s take on it.&#160; I also liked the clean format of his slides – in fact, one of the cool things I’ve seen at all conferences around the world in the past year, is the abandonment of “corporate templates” in favour of the just high quality content.&#160; I’d like to think I’ve had a small influence in that, but I like the trend.</p>
<p>Next up was my own talk on the saga of upgrades I had in 2011.&#160; Its a funny talk to give, because there’s not a lot of technical content but because of the stress and pain those upgrades had, I still get a physiological response when I’m doing the talk – I get sweaty and adrenalin – all memories of a time when we nearly lost millions of dollars with a down system.&#160; But the talk went well and I felt like a rock star because my ugly mug was on the big screen behind the stage <img style="border-style:none;" class="wlEmoticon wlEmoticon-smile" alt="Smile" src="http://connormcdonald.files.wordpress.com/2011/12/wlemoticon-smile2.png" /></p>
<p>I was pretty much spent after that – I tried to catch John B’s talk on ASH and Jonathan Lewis’s talk on the optimizer, but as I felt myself falling to sleep in each, I had to give up and head back to the hotel for a sleep.&#160; A hour of recovery sleep, and I was back Luca’s talk on storage options at CERN and Ray Wang’s keynote.</p>
<p>Then it was off to the masquerade ball.&#160; I bombed out about 11pm, but apparently many Oakies partied hard into the night!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/connormcdonald.wordpress.com/60/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/connormcdonald.wordpress.com/60/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/connormcdonald.wordpress.com/60/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/connormcdonald.wordpress.com/60/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/connormcdonald.wordpress.com/60/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/connormcdonald.wordpress.com/60/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/connormcdonald.wordpress.com/60/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/connormcdonald.wordpress.com/60/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/connormcdonald.wordpress.com/60/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/connormcdonald.wordpress.com/60/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/connormcdonald.wordpress.com/60/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/connormcdonald.wordpress.com/60/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/connormcdonald.wordpress.com/60/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/connormcdonald.wordpress.com/60/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=connormcdonald.wordpress.com&amp;blog=492327&amp;post=60&amp;subd=connormcdonald&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://connormcdonald.wordpress.com/2011/12/28/ukoug-day-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/2903ecfd61caf221b8b8d5df39962891?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Connor McDonald</media:title>
		</media:content>

		<media:content url="http://connormcdonald.files.wordpress.com/2011/12/wlemoticon-smile2.png" medium="image">
			<media:title type="html">Smile</media:title>
		</media:content>

		<media:content url="http://connormcdonald.files.wordpress.com/2011/12/wlemoticon-smile2.png" medium="image">
			<media:title type="html">Smile</media:title>
		</media:content>
	</item>
		<item>
		<title>UKOUG day 1</title>
		<link>http://connormcdonald.wordpress.com/2011/12/10/ukoug-day-1/</link>
		<comments>http://connormcdonald.wordpress.com/2011/12/10/ukoug-day-1/#comments</comments>
		<pubDate>Sat, 10 Dec 2011 13:06:32 +0000</pubDate>
		<dc:creator>connormcdonald</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">https://connormcdonald.wordpress.com/?p=57</guid>
		<description><![CDATA[Well, as per normal when attending a conference in another country, it started very early….very early indeed.&#160; 4am the body clock decided it was time to get up, so eventually just gave up on trying to get back to sleep and started the day First up was Kyle Hailey’s talk on SQL Tuning.&#160; Kyle is [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=connormcdonald.wordpress.com&amp;blog=492327&amp;post=57&amp;subd=connormcdonald&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Well, as per normal when attending a conference in another country, it started very early….very early indeed.&#160; 4am the body clock decided it was time to get up, so eventually just gave up on trying to get back to sleep and started the day <img style="border-style:none;" class="wlEmoticon wlEmoticon-smile" alt="Smile" src="http://connormcdonald.files.wordpress.com/2011/12/wlemoticon-smile1.png" /></p>
<p>First up was Kyle Hailey’s talk on SQL Tuning.&#160; Kyle is very passionate about his stuff, and his Visual SQL Tuning is all about graphing rather than “reading” the execution plan.&#160; He was in Hall 1, which this year is projecting the speaker up on the big screen next to the slides…Should be fun for my talk in that room tomorrow !</p>
<p>Next up was my partitioning talk, which went OK, although its one of those talks that just bludgeons people with streams and streams of content and examples. So by the end of the 60 minutes, you can tell when people are “full” and can’t take much more <img style="border-style:none;" class="wlEmoticon wlEmoticon-smile" alt="Smile" src="http://connormcdonald.files.wordpress.com/2011/12/wlemoticon-smile1.png" /></p>
<p>One thing that’s interesting this year is the size of the exhibition hall.&#160; There seems to be a lot less exhibitors here – I wonder if they this is a reflection of the fact that generally conferences seem to be attracting technical people rather than middle management.&#160; (And technical people don’t have an operating budget, so the exhibitors are not seeing it as a worthwhile investment…who knows).</p>
<p>Here’s a picture of the hall in case anyone hasn’t seen how these things are mapped out:</p>
<p>&#160;</p>
<p><a href="http://connormcdonald.files.wordpress.com/2011/12/p1050418.jpg"><img style="background-image:none;padding-left:0;padding-right:0;display:inline;padding-top:0;border-width:0;" title="P1050418" border="0" alt="P1050418" src="http://connormcdonald.files.wordpress.com/2011/12/p1050418_thumb.jpg?w=496&#038;h=373" width="496" height="373" /></a></p>
<p>&#160;</p>
<p>The afternoon sessions included Julian Dyke and Martin Bach’s talk about clusterware upgrades – both of which tend to mirror the content I’ll be doing tomorrow, namely …. its painful.</p>
<p>(Day 2 and Day 3 will be coming in a couple of weeks….I’m off to Rottnest (<a href="http://www.rottnestisland.com/">http://www.rottnestisland.com/</a>) for a couple of weeks – no laptop, no internet…</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/connormcdonald.wordpress.com/57/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/connormcdonald.wordpress.com/57/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/connormcdonald.wordpress.com/57/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/connormcdonald.wordpress.com/57/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/connormcdonald.wordpress.com/57/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/connormcdonald.wordpress.com/57/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/connormcdonald.wordpress.com/57/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/connormcdonald.wordpress.com/57/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/connormcdonald.wordpress.com/57/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/connormcdonald.wordpress.com/57/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/connormcdonald.wordpress.com/57/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/connormcdonald.wordpress.com/57/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/connormcdonald.wordpress.com/57/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/connormcdonald.wordpress.com/57/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=connormcdonald.wordpress.com&amp;blog=492327&amp;post=57&amp;subd=connormcdonald&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://connormcdonald.wordpress.com/2011/12/10/ukoug-day-1/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/2903ecfd61caf221b8b8d5df39962891?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Connor McDonald</media:title>
		</media:content>

		<media:content url="http://connormcdonald.files.wordpress.com/2011/12/wlemoticon-smile1.png" medium="image">
			<media:title type="html">Smile</media:title>
		</media:content>

		<media:content url="http://connormcdonald.files.wordpress.com/2011/12/wlemoticon-smile1.png" medium="image">
			<media:title type="html">Smile</media:title>
		</media:content>

		<media:content url="http://connormcdonald.files.wordpress.com/2011/12/p1050418_thumb.jpg" medium="image">
			<media:title type="html">P1050418</media:title>
		</media:content>
	</item>
		<item>
		<title>My talks for UKOUG</title>
		<link>http://connormcdonald.wordpress.com/2011/12/05/my-talks-for-ukoug/</link>
		<comments>http://connormcdonald.wordpress.com/2011/12/05/my-talks-for-ukoug/#comments</comments>
		<pubDate>Sun, 04 Dec 2011 23:32:00 +0000</pubDate>
		<dc:creator>connormcdonald</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">https://connormcdonald.wordpress.com/?p=52</guid>
		<description><![CDATA[UKOUG talks for me if you&#8217;re keen Monday 11:05, Hall 9 Partitioning 101 A look at the partitioning options at your disposal in Enterprise Edition from its inception in Oracle 8 up to array of improvements that have arrived in 11g. We&#8217;ll look at the various types of partitioning, how to decide whether you should [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=connormcdonald.wordpress.com&amp;blog=492327&amp;post=52&amp;subd=connormcdonald&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>UKOUG talks for me if you&#8217;re keen</p>
<p><strong>Monday 11:05, Hall 9     <br />Partitioning 101</strong></p>
<p>A look at the partitioning options at your disposal in Enterprise Edition from its inception in Oracle 8 up to array of improvements that have arrived in 11g. We&#8217;ll look at the various types of partitioning, how to decide whether you should be using it, how to get the best out of it, and where it might trip you up. </p>
<p><strong>Tuesday 11:15, Hall 1     <br />Clusterware upgrade diary</strong></p>
<p>In 2010, a performance issue in the version of the database that a client was using, marked the commencement of a year long struggle to get the desired results, including numerous patches and upgrades. Come for a ride on the journey we&#8217;ve just completed &#8211; hear about this client&#8217;s experiences, and get some advice on how to diagnose performance problems, tackle upgrades, deal effectively with support, how to select the right platform, whilst keeping your sanity at the time</p>
<p><strong>Wednesday 12:30, Hall 5     <br />Optimizer Stats &#8211; a fresh approach</strong></p>
<p>The optimizer must try to be all things to all people, and similarly, the collection of optimizer statistics must try to satisfy the needs of all. And many DBA&#8217;s just leave it at that. But with a little more effort and discipline, we can achieve much more than a &quot;one-size-fits-all&quot; policy. We&#8217;ll look at the tools now available under DBMS_STATS in Oracle 11g to get more stability and better performance with optimizer statistics. </p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/connormcdonald.wordpress.com/52/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/connormcdonald.wordpress.com/52/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/connormcdonald.wordpress.com/52/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/connormcdonald.wordpress.com/52/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/connormcdonald.wordpress.com/52/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/connormcdonald.wordpress.com/52/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/connormcdonald.wordpress.com/52/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/connormcdonald.wordpress.com/52/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/connormcdonald.wordpress.com/52/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/connormcdonald.wordpress.com/52/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/connormcdonald.wordpress.com/52/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/connormcdonald.wordpress.com/52/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/connormcdonald.wordpress.com/52/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/connormcdonald.wordpress.com/52/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=connormcdonald.wordpress.com&amp;blog=492327&amp;post=52&amp;subd=connormcdonald&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://connormcdonald.wordpress.com/2011/12/05/my-talks-for-ukoug/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/2903ecfd61caf221b8b8d5df39962891?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Connor McDonald</media:title>
		</media:content>
	</item>
		<item>
		<title>UKOUG day minus 1</title>
		<link>http://connormcdonald.wordpress.com/2011/12/04/ukoug-day-minus-1/</link>
		<comments>http://connormcdonald.wordpress.com/2011/12/04/ukoug-day-minus-1/#comments</comments>
		<pubDate>Sun, 04 Dec 2011 15:49:21 +0000</pubDate>
		<dc:creator>connormcdonald</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">https://connormcdonald.wordpress.com/?p=50</guid>
		<description><![CDATA[There is nothing better than a) bumpy flight from Perth to Dubai b) bumpy flight from Dubai to Birmingham then to open the laptop bag and find a) a laptop b) NO laptop power supply So this morning was mad panic, getting taxis to PC-World to buy a universal power supply, which beeps when the [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=connormcdonald.wordpress.com&amp;blog=492327&amp;post=50&amp;subd=connormcdonald&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>There is nothing better than</p>
<p>a) bumpy flight from Perth to Dubai</p>
<p>b) bumpy flight from Dubai to Birmingham</p>
<p>then to open the laptop bag and find</p>
<p>a) a laptop</p>
<p>b) NO laptop power supply</p>
<p>So this morning was mad panic, getting taxis to PC-World to buy a universal power supply, which beeps when the PC is started with “Warning Warning – power supply is not up to par”…..</p>
<p>But power is power….at least the week can only get better than this !</p>
<p>&#160;</p>
<p>OakTable sunday about to come to a close – some great talks as always.&#160; Its almost beer o’clock <img style="border-style:none;" class="wlEmoticon wlEmoticon-smile" alt="Smile" src="http://connormcdonald.files.wordpress.com/2011/12/wlemoticon-smile.png" /></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/connormcdonald.wordpress.com/50/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/connormcdonald.wordpress.com/50/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/connormcdonald.wordpress.com/50/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/connormcdonald.wordpress.com/50/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/connormcdonald.wordpress.com/50/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/connormcdonald.wordpress.com/50/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/connormcdonald.wordpress.com/50/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/connormcdonald.wordpress.com/50/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/connormcdonald.wordpress.com/50/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/connormcdonald.wordpress.com/50/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/connormcdonald.wordpress.com/50/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/connormcdonald.wordpress.com/50/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/connormcdonald.wordpress.com/50/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/connormcdonald.wordpress.com/50/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=connormcdonald.wordpress.com&amp;blog=492327&amp;post=50&amp;subd=connormcdonald&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://connormcdonald.wordpress.com/2011/12/04/ukoug-day-minus-1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/2903ecfd61caf221b8b8d5df39962891?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Connor McDonald</media:title>
		</media:content>

		<media:content url="http://connormcdonald.files.wordpress.com/2011/12/wlemoticon-smile.png" medium="image">
			<media:title type="html">Smile</media:title>
		</media:content>
	</item>
	</channel>
</rss>
