Oracle

Oracle, SQL

The case for CASE

TweetShareSharePin0 SharesI’ve just uploaded my latest article. This time it is a look at the SQL keyword CASE. It’s power is often not fully appreciated. It is much more flexible and powerful than you may expect from just taking a quick glance in the official documentation. The article is located here. Please post comments and questions here. TweetShareSharePin0 Shares

Performance, Oracle, ITL

Interested Transaction List

TweetShareSharePin0 SharesInterested Transaction List is the method through which Oracle keeps track of which transaction has updated which row in a block. I wrote an article about it a while back where I show how the ITL works and how it impacts performance in certain situations. The basis of the article is a page locking scenario I encountered. Sure, page locking is not possible in Oracle, but an ITL wait is very similar to a page lock.  You find the […]

XML, Oracle, AQ

Advanced Queuing

TweetShareSharePin0 SharesI have just uploaded an article I wrote almost five years ago to the day. It was my first attempt and I wrote about Oracle AQ which is Oracle version of a messaging product. AQ is included with the database and has a lot of nice features including full support for XML payloads. Another important benefit is that your messages are synchronized with your DML as both are committed in the same transaction. You can find the article here. […]

SQL, Oracle

Supported version of skip locked?

TweetShareSharePin0 SharesAs Pawel showed in his post some details about how the row scn technology works in specific situations isn’t as well documented as you’d wish. I asked Oracle development to clarify the questions I had and the answer back was both interesting and useful. Every kind of update and lock on a row will make the rowscn for the row/block NULL until the updating/locking transaction completes. That is, any kind of lock and update can be identified when retrieving […]

Partitioning, Oracle, Licensing, DBA

Rant about partitioning licensing

TweetShareSharePin0 SharesI’ll give myself a quota for no more than one rant a month. However, one of my pet peeves is how Oracle licenses the database. I’l probably return to why I dislike the general model in a future rant, but this on e will be specific to partitioning. To use partitioning, you have to pay for the Enterprise Edition of the database at $40,000 per CPU and then pay an additional $10,000 for the partitioning option. That is a […]

Oracle, Blogging

Who reads blogs

TweetShareSharePin0 SharesReading this post about why the average Oracle IT worker doesn’t read blogs got me thinking. Does the average IT worker read blogs? I’m not sure. In what I have observed, it is something a segment does. I’d contend that the average blog reader is more advanced and more thirsty for more knowledge that the average person in the same field. I think it is also something the more internet aware do. Everyone knows about the internet, but how […]

XML, SQL, Oracle, Challenge

SQL Challenge I – Solution

TweetShareSharePin0 SharesBoth Gary and Philip postd working versions. Gary’s didn’t work for me when I had the same letter more than one time in the string. Philips did work and the need to deal with each letter as if it is unique can of course be questioned. The intent was for a solution that could handle that and as Philip showed adjusting that is as easy as to just add a distinct. My version is based on not using analytical […]

XML, SQL, Oracle

Dynamic in-line queries

TweetShareSharePin0 SharesI don’t know of a better name for this feature. I think this name describes the function well, even if it may sound overly ambitious. This whole post will be based on a post by Laurent Schneider where he uses XML features to do a select count(*) from different tables and return the result in one result table. It is like a auto generated number of selects that are unioned together. You can find Laurent’s post here. It’s a […]

SQL, RSS, Perl, Oracle, Alert Log

Creating a feed with ORA-00600 errors

TweetShareSharePin0 SharesInstead of having to look at your different alert logs for ORA-00600 errors frequently, why not have them come to you? This post will, as promised, show the Perl code needed to publish a feed with ORA-00600 errors. This is building on the previous two posts that shows how to create an external table for the alert log and how to pull out all information for an ORA-00600 so each fetch retrieves one the data you’re interested in. The […]

SQL, Oracle, Alert Log

Querying the alert log for ORA-00600

TweetShareSharePin0 SharesTime to expand on the last post. As promised this will be about how to get the ORA-00600 information out of an external table for the alert log. We will use the same user and setup as we had in that post. Lets first review how an ORA-00600 is represented in the alert log. The actual arguments does not matter, I took them from a forum post to just have an example. What we care about for what we’re […]