Using JSON_TABLE to move JSON data to a relational table
We are using Zoom to host the webcasts for our AskTOM Office Hours program. We schedule the meetings automatically, using their API. We can then also retrieve the meeting information as JSON documents...
View ArticleDon't test PL/SQL features with trivial code
On the one hand, when you test something, you want to keep your test code as simple as possible so that you can focus on the issue you are testing.On the other hand, if you make your code too simple...
View ArticleAn appreciation of UI developers from a database developer
From what I can tell, JavaScript developers write much more complicated code, to handle much more challenging requirements, than I do, with my SQL and PL/SQL programming in the Oracle Database.I am...
View ArticleMining Application Express data dictionary views: find unconditional processes
I ran into a problem yesterday on the Oracle Dev Gym (offering quizzes, workouts and classes on Oracle technologies). A number of rows of data were incorrectly deleted. I was able to use Flashback...
View ArticleQualified expressions (aka, constructor functions) for collections and...
As anyone who has followed me over the years knows, I like the Oracle PL/SQL language. Sure, it's not the newest, coolest kid on the block (it probably never was). But then, either am I. :-) PL/SQL is,...
View ArticleRankings for 2017 PL/SQL Championship on the Oracle Dev Gym
Thirty-six Oracle Database technologists competed on March 22nd in the 2917 PL/SQL Annual Championship at the Oracle Dev Gym. With five tough quizzes by yours truly, the competition was fierce!...
View ArticleA new name - and amazing new future - for PL/SQL
[You might think that this was published on April 2nd, but in fact it was published on April 1st.]PL/SQL, the database programming language from Oracle, introduced in 1991 and used by millions over the...
View ArticleNested blocks, autonomous transactions and "Where do I commit?"
This question rolled into my In Box today:If I have a procedure that is AUTONOMOUS_TRANSACTION that does an insert and then it calls a procedure with an insert, does the second procedure need a commit,...
View ArticleTips for a great presentation
There's no shortage of people giving advice on how to improve your presentation skills and impact. I offer a short list of links at the bottom of this post. I though I'd take a few moments to share...
View ArticleOracle Dev Gym gets a facelift - and more!
Over the weekend of April 21, we upgraded the Oracle Dev Gym site to v3 (code name: ORANGE). Here's the v2 home page:and now v3:Now you see the reason for the code name. It's orange!Here are the key...
View ArticleHow do I get the attribute of my object type in SQL?
This question found its way into my In Box yesterday:I have a table with an object type column. I want to way to get the value of an attribute of that object type in my query. But Oracle keeps telling...
View ArticleError stack function now (12.2) includes backtrace information!
The DBMS_UTILITY has long (since 10.2) offered three functions that are very handy when either tracing execution or logging errors:FORMAT_CALL_STACK - answering the question "How did I get...
View ArticleMutating table errors and multi-row inserts
The Oracle Dev Gym PL/SQL Challenge quiz played 28 Apr - 4 May explored the interactions between row-level triggers and multi-row inserts, particularly when it comes to mutating table errors. If you...
View ArticleThe SmartDB Resource Center
I put together this blog post for those interested in learning more about the SmartDB (also or formerly known as "ThickDB") architecture and how to apply it in your applications. I will update it as...
View ArticleHow many times does my table function execute?
A left correlation join occurs when you pass as an argument to your table function a column value from a table or view referenced to the left in the table clause. This technique is used with XMLTABLE...
View ArticleHow to avoid spamming users from your applications
Does your application send out emails? Lots of emails?Did you ever get that feeling like someone punched you in the stomach when you realize that you mistakenly sent out hundreds or thousands of emails...
View ArticleClass on PL/SQL Table Functions at the Oracle Dev Gym
http://bit.ly/dg-tfA table function is a function that can act like a table inside a SELECT statement. The function returns a collection, and the SQL engine converts that collection into rows and...
View ArticleThe PL/Scope Resource Center
PL/Scope is a compiler-driven tool that collects PL/SQL and SQL identifiers as well as SQL statements usage in PL/SQL source code. PL/Scope collects PL/SQL identifiers, SQL identifiers, and SQL...
View ArticleThe PL/SQL Collection Resource Center
Collections (Oracle PL/SQL's data structure to implement arrays, lists, stacks, queues, etc.) are not only handy in and of themselves, but are used for many key features of this powerful database...
View ArticleCode You Should Never See in PL/SQL
If you ever run across any of the following, apply the suggested cleanup, or contact the owner of the code, or run for the hills.And I am pretty sure many of my readers will have suggestions for other...
View Article