Blogs

Stupid unique index tricks...

I have a case where I need to enforce uniqueness on a combination of columns but only when a flag is set (ACTIVE_FLAG=1). The table also holds history and may have multiple inactive records mixed in but I don't want to keep those from being added to the table.

This can be done by exploiting the fact that null index expressions are not indexed. DECODE and function based index to the rescue! Here is a quick proof of concept with the relevant columns:

Tags: 

"Playing" Nice with Oracle - Using Play Framework 2.1 with Oracle

I am throwing together a quickie Play Framework application for a DB process dashboard. I love Play. Its quick, powerful, and does a pretty good job of getting out of your way when you need it to.

But as a cutting edge open source app framework the documentation is sometimes a little behind the curve... Or assumes you are always using h2 for dev and mySQL for production.

Here are some tips on getting your new Play app to play nicely with Oracle via JDBC.

Make the JAR Available to your App

PowerDesigner Annoyances 1

Yes, I tagged it with a '1' because I already know there are more to come :)

I created a notebook on this site to collect information about PowerDesigner. My first entry deals with basic script generation options for Oracle and how to get better scripts that are more error-free when the are generated by PowerDesigner.

You can check it out here:
http://ba6.us/PowerDesigner-Basic-Gen-Script-Settings

-Dave

Updated Heat Map Report

During my preparation for a visualization presentation at East Coast Oracle Users Group I realized I had an opportunity for a teaching moment on Levels of Abstraction. A few months back I published my PL/SQL code for an Archived Log Switch Heat Map.

myBatis Migrations and Oracle RDBMS

I am evaulating some schema migration tools for a project I am working on. I want some basic help organizing scads of changes that we will make during development. I also want the ability to produce generic SQL scripts as output to pass along for review / execution by folks that are not knee deep in our development environment.

The SQL Script output requirement cut out a lot of options. For a comprehensive list of options check out the feature matrix on the Flyway page which compares 9 popular schema migration tools.

d3.js and Application Express - Real time update example...

I posted an example of how to create an Application Express bar graph with the d3.js visualization toolkit in the Notebooks section of the site.

If you want to see how this can be done in Application Express, check out the page here: http://ba6.us/d3js_application_express_basic_dynamic_action .

-Dave

Using Google Charts API and SQL Developer (or SQLPLUS)...

I added a page to my SQL Developer Tips and Tricks page about integrating the Google Graph API with SQL Developer HTML reports.

I sometimes run out of steam with the built in chart and gauge capabilities of SQL Developer. With a little work you can leverage the Google Graph API to create Line, Bar, Pie Charts, Map, Scatter, Venn Diagrams, Radar Charts, QR Codes and Meters.

Here is everything you need to know to get started: SQL Developer and Google Graph API Example

-Dave

V$OBJECT_MONITORING gotcha...

I have been checking out some usage patterns on a database I am migrating to Exadata. I won't go into the 'drop all of the indexes' herd mentality... but I would like to know what is really being used on this system so we can make some educated guesses about what is really needed. Luckily it is a DW / ETL type of application that has a comprehensive nightly refresh. Yes, a nice way of saying flush and fill. Well at least I know they touch _every_ important object _every_ night.

Archived Log Switch Heat Map for SQL Developer...

... or just use SQLPLUS to spool to HTML and open with a browser if you are old school :)

I am on week 4 of my newly reimaged work laptop sans Toad. I am trying to make a go of things with SQL Developer only. So far so good. I have a more comprehensive post on my transition in the works but in the meantime I have been filling in some gaps with User Defined Reports. I started collecting them here: https://github.com/dmann99/SQLDevUDRepPack

Golden Gate Lag Graph + Alerting scripts on the way...

I posted my GoldenGate / Gnuplot lag time alerting shell scripts to a new GitHub repository: http://github.com/dmann99/ggtools

The scripts worked on v8 and I don't think the INFO ALL screen has changed much since then so hoping it will work on v11 with a minimum of changes. I will post a more comprehensive walkthrough after I verify the v11 compatibility...

I also have an Alerting perl script that I will be tidying up and including in the ggtools repository ... but that won't be available until later this month.

Pages

Subscribe to RSS - blogs