Looking around Oracle Open World this year, it seemed like there was a significant drop in attendees – at least compared to years past or especially compared to Dreamforce. Feels like there is a lack of excitement. Makes me feel like Oracle has hit it’s apogee.
Sometimes if you’ve been building data pump jobs via PL/SQL, you might get some part of it incorrect, and thus the job is left in the state of “DEFINING”, ie, you are building it but never managed to complete the process. An interesting anomaly is that when this happens, your current session struggles to clean things up, ie,
UPDATE: recorded videos now available
If you can’t make it in person to Oaktable World, check it out via live streaming !
here is the agenda
Cloud is upon us! Everywhere you turn vendors are offering cloud solutions promising (once-again) a single solution to solve the ills of our IT organizations.
Bah! Some naysayers say “this is just the same-old, same-old, we’ve been doing the cloud for years” – hmmmm is this really true?
Today I get on a plane. It is a long flight, 10+ hours, and throughout all of it, some people will hate me. I even expect some Hard Stares. Why? Because I’ll be sitting in a seat with a large space in front of it – and my legs dangling off the front of the seat. Those over 6 foot will be fuming I have that extra leg room. See me sitting there. See me smiling:-) .
I just posted a video on how I get the most out of my SQL*Plus usage. You can check it out here
I reference various elements of my login.sql file throughout the video – so here’s login.sql file – feel free to utilise any parts of it for your benefit.
Often, to do an existence check for data, people issue a “SELECT COUNT(…)” against the relevant table. So in pseudo-code, the logic looks like something like this:
select count(*) into my_variable from MY_TABLE where COL = if my_variable > 0 then ...
For unique key lookups, then that’s fine, but it’s a risky strategy as a general premise, because counting all of the records can be costly, especially if you’re only interested in the first one. You are coding always hoping that some index lookup is going to be possible. And in strict terms, you actually are not meeting the requirement. Someone asked you to check for existence, NOT to get an exact count of how many matches there were. You are doing more work than you need to.
So here are some potentially better alternatives:
Option 1: stop after the first row
Want a free version of Delphix Express installed on your computer with the assistance of Oracle and Delphix experts? We will be holding #CloneAttack again at Oracle Open World on Oct 27 from 1:30-4:30.
CloneAttack is a hands on labs to install a fully operation Delphix Express environment on your laptop.
The labs will be hosted at the Creativity Museum, which is at the corner of Howard St and 4th St above the carrousel, on Tuesday Oct 27 1:30pm to 4:30pm. Dell and DBvisit will also beholding #ToadAttack and #RepAttack in the same location with us.
The following is an example of rolling a virtual database (VDB) back in time with Delphix Express, the free version of Delphix. Delphix by default keeps a 2 week window of changes for virtual databases (configurable to 2 months, 2 years etc). Thus we can go back in time to any point in that time window.
Why would we want to go back in time?
Maybe something went wrong. For example VDBs are typically used by developers who aren’t as versed in databases as a DBA. What happens when a developer accidentally drops a table yet there was other work in the database that they want to keep. In the industry, half the time, developer databases are not backed up because they are “just development databases.” With Delphix those developer databases are always backed up and we can go back in time in a few minutes, so if a developer accidentally drops a table or updates the wrong column we can recover in minutes.