Scripting the Oracle Wallet truststore

| May 15, 2020

As you may recall, I do not like processes that requires a GUI for things that should be possible to do repeatedly and be part of automatic deployment of a full environment.

Th us I want the whole wallet creation to be done in scripts. No, the root certs don’t change often and no it would bot be a bad thing to just commit a complete wallet to git. But I still like to quickly (more...)

Update on creating wallet

| Apr 29, 2020

I held a live stream for SWEOUG that presented what my last two blogs covered. It was my first ever and while it was a bit uncomfortable to set up to not see your audience it worked well. In fact it was really enjoyable and I look forward to doing more.

In the stream Ilmar Kerm made a few comments about what I said. I was not able to fully grasp it during the stream, but (more...)

Wallet setup for https

| Apr 21, 2020

In the last blogpost I wrote about how to access an HTTP-resource and the ACL needed for it. That works great for HTTP, but as the world is turning to HTTPS it is not enough in most cases.

In this post I will look at how to set up the trust store in a database to allow access to an HTTPS-based access. I will use the same simple select grabbing the html for a webpage (more...)

Accessing a website from the database

| Apr 15, 2020

One of the things people want more and more often is to somehow read from a web-resource using a database. It could be to just get the HTML off of a website or access REST via PL/SQL, or grab a JSON-file residing on a public website. No matter which it is we need to declare that it is a website we want the database user to reach.

To have a simple example I’ll just show how to (more...)

Sysdate for start_date i scheduler is bad

| Apr 9, 2020

I was recently asked to investigate why a job that was to update a few thousand rows took an hour where it had been proven to do the work in just seconds in other environments.

Was this new environment set up with much more data? No, actually much less as the tests before had been with production like data though not production copy.

After getting data for three executions it showed that the time was ALWAYS (more...)

Finding the query you never saved

| Mar 31, 2020

Yes, I admit it. I am sometimes not at all as structured as I would like to think. Recently I had worked on a query that had taken me many hours to get just right. When I was done I celebrated with a coffee break (I’m a Swede after all) and after it I started working on other pressing issues.

A couple of weeks later that query is desperately needed as the same test needs be (more...)

The bug that wasn’t

| Mar 21, 2020

This is a short update to the presumed bug I wrote about recently in this post.

After a few back and forth with Oracle support it turns out this is a well-known (to them) effect of using dbms_random in SQL.

The base for this seems to be a bug report in 10g that was declared “not a bug”. You can read the bug report on MOS. It is also covered in this doc that references the same bug.


Moving or starting with Visual Code

| Mar 11, 2020

If you live your life in an editor writing code or configuration files, you need Visual Code in your life. Yes it is a Microsoft product and possibly surprising to use in environments that are not heavy on Microsoft or even using Windows operating system. But the truth is that it may well be the best thing to ever come out of Microsoft. If you read that as a diss of Microsoft, you do not (more...)

Bug with prefactoring and nondeterministic SQL

| Mar 3, 2020

Sometimes the results of a SQL is not at all what you expected. Most of the time it is a simple error you’ve made. Very rarely is it an issue that after hours of looking at it still looks like SQL does something wrong, But it still happens.

This post is about one such situation that occurred las week. If you read the last blog post, you’ll recognize some of this. It turned up (more...)

LUHNs algoritm – Three ways with SQL and PL/SQL

| Feb 25, 2020

Have you encountered LUHNs algorithm? I can almost guarantee it even if you’ve never heard the name before. It is part of all of our lives every single day.

It is used to check that various numbers are correctly entered. From ID numbers for persons in Sweden, Grace, and Israel to credit card numbers and IMEI numbers and misc other things.

It is a very simple checksum function not intended to be cryptographically secure hash (more...)