Some more SQL clues, this time to chocolate bars.
I have written a lot about comparing and synchronizing tables. My examples always had both primary keys and non-key columns, so I could do updates along with inserts and deletes. What about the other tables? Here's a technique that works for them.
I’m always amazed at the questions that pop up for me. For example, how do you convert an Oracle script that creates my Video Store model to a Microsoft SQL Server script. It’s not very hard but there’s one big caveat, and that’s the fact that
system_user is a reserved word. That means you can’t create the Access Control List (ACL) table with a
system_user name. The alternative, would be to convert the
system_user table name to
database_user. That’s what I’ve done in this example.
How to generate SQL to compare and sync tables, when the target table has a UNIQUE constraint instead of a primary key. Warning: doesn't work if some rows have NULL values in all the columns used by the constraint.
Use MERGE to apply "Change Data Capture" input to a target table with one SQL statement.
Happy new year to the thousands of Oracle technologists who played a quiz or otherwise visited and benefited from the PL/SQL Challenge in 2014.
The Challenge continues into the very frosty New Year (as I write, it is 0 degrees Fahrenheit here in Chicago), but first, let's do (some of) the numbers from 2014.
Over 4000 Oracle technologist took at least one quiz in 2014.
set employer = 'Oracle',
job_title = 'Database Evangelist'
where name = 'Chris Saxon';
That’s right, as of last week I’m now an Oracle employee! I’m joining Steven Feuerstein’s database evangelist team, a hugely exciting opportunity I’m honoured to be a part of.
Use the MERGE statement to do "upserts". If you want to synchronize tables without doing DELETEs, MERGE will do the job without a prior "compare" step.
Happy New Year to all those kind enough to read my blog! 2014 was the year I started blogging and presenting at Oracle-related conferences. It has been a great experience. I enjoy studying specific problems in depth and being able to correct or improve my efforts without constraints. Thanks very much to all those who […]