Use “IS NULL” Rather Than “= NULL” When Upgrading to Newer Versions of SQL Server

Microsoft SQL Server logo

I’ve been upgrading an old Sybase PowerBuilder 6.5 app to a much newer version, SAP PowerBuilder 12.6.

During this little adventure, I’ve had to update much of the hard-coded SQL code that was originally written for SQL Server 4.2, and was later upgraded to SQL Server 2000.

This application’s database had been running on SQL Server 2008 since it was still compatible with SQL Server 2000 via the code below:

</p>
<p>USE master<br />GO</p>
<p>ALTER DATABASE appdatabase<br />SET COMPATIBILITY_LEVEL = 80</p>
<p>

Since we’re about to hit Microsoft’s End of Life for any version of SQL Server that will allow compatibility with SQL Server 2000, any code which is not obsolete must be rewritten.

I knew that using “*=” and “=*” instead of LEFT JOIN and RIGHT JOIN would have to change. What I had never seen before is that using “= NULL” rather than “IS NULL” in a WHERE clause would no longer work. Why that is makes sense; it’s just that older versions of SQL were more forgiving for straying from the ANSI standard.

If you have an older program and you upgrade the SQL Server database and all of a sudden you get “no rows returned” on queries that should be returning data, this could be your problem.

A Solid-State Drive Can Revitalize that Old MacBook Pro

Late-2011 MacBook Pro

I’ve had the same MacBook Pro (late-2011 model 8,1) since early 2012, and am no longer able to put new versions of macOS on it, as Mojave only works with newer models. Over the years it’s become much slower, and the 500 GB HDD that came with it – almost being full – is near failure, according to EtreCheck Pro.

For a reasonable price I ordered a 1 TB solid-state drive and data transfer kit from OWC and within a few days I was up and running on the new drive.

Between following the suggestions on EtreCheck Pro (like deleting unused 32-bit apps and uninstalling unnecessary daemons) and this new larger and faster drive, it’s like I have a brand new Mac – except that I still can’t install Mojave. Unfortunately, there’s no fix for that.

Don’t Put Spaces in Java Install Path!

Oracle Weblogic Server 12c logo

So you’ve decided you want to install Oracle Middleware Weblogic Server on Windows, but you haven’t installed the Java JDK yet. Are you thinking about installing it somewhere like “C:\Program Files\Java\jdk…”?

Do not pass GO, do not collect $200, go directly to Oracle installation jail! For whatever reason, Oracle – who also happens to own Java – has made their Weblogic Configuration Wizard completely unfriendly to any spaces being present in the Java installation path. If you don’t heed my advice, you’ll likely end up with the error message
“C:\Program is not recognized as an internal or external command…”
or something like it.

Either choose the default location for installing Java, or if you must put it on a different drive than C, only change the drive letter. This will prevent a great amount of frustration!

HTTP Error 414 on WordPress

HTTP error 414

While trying to update the WP LinkedIn widget on a WordPress blog, I ran into an HTTP error I had never seen before: 414.

HTTP error 414 indicates that the URI is too long for the web server to interpret it.

In the case of a WordPress blog, this is likely caused by a security feature of the iThemes security plugin. If iThemes is being used, the first step would be to turn off the “Filter Long URL Strings” checkbox. This can be accessed through the WordPress admin console: Security –> Settings –> System Tweaks.

System Tweaks in iThemes Settings

The checkbox is about halfway down the page.

Filter long URLs checkbox

I would suggest turning this off only long enough to complete whatever administrative action you are doing, and then turning it back on, so as not to create an unnecessary vulnerability.

If you are not running iThemes, the setting is likely found in the Apache configuration, and may need to be addressed there.