Tuesday, 29 June 2010

Twitter and web 2.0

Okay, I've grown with the times and added the customary twitter widget to the blog. I'll be re-designing the main site soon, giving it a little bit of a lick of paint.

Monday, 25 February 2008

Further tidying

Had a bit of a blitz on the CSS file, removing all unused entries. Also, I made some changes to the main page, making it easier to change the layout in future. You shouldn't see any changes, although some of the spacing between menu items has decreased by a few pixels.

I also added a link to the excellent 11g new features series by Arup Nanda on oracle.com, as well as removing some dead links.

Saturday, 2 February 2008

A long time and a tidy up

Well, to say it's been a long time since I did anything on oratechinfo.co.uk would be an understatement. To be perfectly honest, it's been a busy few months with one thing or another, so I simply haven't found the time. Anyway... enough of the excuses.

The recent changes have been mostly tidying up of dead links and slight wording changes. The main page has had a couple of the links to technical articles removed, one of which was a link to Howard Rogers' excellent article on index clustering factors. This was removed because Howard has taken the decision to remove public access to dizwell.com, which is a shame, but his reasons are his own, I guess. I'm not privy to what happened to warrant this change.

Anyway, to cut a long story short, I've modified the message queueing, NULLs and FGAC pages, removing a few dead links. I've also expanded on the handling of multiple namespaces within XML documents via SQL/XML, removing a few dead links while doing so. The main thrust of the SQL/XML change is the difficulty in extracting information from XML documents where there are two or more namespaces defined. I've shown an example of doing this using the XPath local-name() function, but, as I explain in the section, there's no way of doing this which is logically correct, you have to introduce mechanisms for "ignoring" the namespace at some point, which is what
local-name() does.

I've also changed the XHTML / CSS and firefox links on the front page, removing the thunderbird
logo as well. The main reason for this was that I think they look better (especially the firefox one), and I don't really use Mozilla Thunderbird anymore, plus who am I to dictate what email client you use? ;-)

Monday, 30 July 2007

The order of triggers...

It was always considered bad design to design a system which relied on the order of the same type of triggers, i.e.
having two BEFORE UPDATE triggers where trigger 2 relied on trigger 1 having fired. The reason for this is that Oracle doesn't guarantee the order in which these two triggers should fire. Sure, BEFORE UPDATE trigger(s) will fire before AFTER UPDATE trigger(s), but two BEFORE UPDATE triggers can fire in any order.

Well, along come Oracle again and rewrite the rulebook, well.. sort of. As part of 11g, the trigger definition can now contain the FOLLOWS keyword, which takes an argument of a trigger name. This keyword allows you to specify a trigger which this trigger is guaranteed fire after (i.e. this trigger follows another...).

I've updated the trigger firing sequence section of the main site to include a mention of this and a reference to the above page.

Friday, 27 July 2007

Invisible indexes

Just read this blog about invisible indexes in 11g.

Basically, you create an index like
CREATE INDEX index_name ON table_name ( column(s) ) INVISIBLE;

What this has the effect of doing is to only allow use of this index if it's specified in an INDEX hint for the query.

This means that the developer / DBA can issue indexes on systems which will not be utilised by any other queries, and, therefore, can be used to test the performance impact of an index without affecting the main system.

Blogged with Flock

Wednesday, 27 June 2007

Changes to collections and delimited lists

Made some changes to the page on creating delimited lists to collections ( and vice versa ), including putting a section on how to create a delimited list using just SQL (via the SYS_CONNECT_BY_PATH function), as well as revisiting the wording on quite a few sections on that page.

I also noticed a slight problem on the main page in that the text for one of the menu items was out of sync with the rest of the pattern, i.e. it was red when it should have been green.

Thursday, 24 May 2007

cardinality

I've significantly tidied up and updated the page on cardinality, correcting a few things I noticed, but generally expanding on a few things, making it more consistent with the other pages.

I've also corrected an erroneous link to the old "gathering stats" page that I removed a while ago, but it was part of the whole tidy up exercise anyway.

I've also added a "useful links" section (which i've tended to do on a lot of the newer / updated pages). I find further information links very useful on other sites, and I assume that other people do to.