I quite often find myself scripting objects out via T-SQL rather than using the GUI, it's not that I have anything against using the GUI to script out a Stored procedure, it's just that sometimes this can be time-consuming especially when there are alot of stored procedures in the Programmability folder. I know that... Continue Reading →
UNDERCOVER TOOLBOX: When was my last backup taken?
One question that seems to come up on the forums again and again is, 'how can I see when my database was last backed up?'. There are always a bunch of answers and some very convoluted scripts thrown around. As a bit of a lunchtime quickie today I thought I'd share with you a script... Continue Reading →
Using the SQL Error log to help log meaningful errors for your Automated Restore jobs.
In one of my previous posts I went over a scenario where an Auto restore job was logging Restore errors to a table and the error that was being inserted was '3013 - RESTORE LOG is terminating abnormally' and this was due to SQL Server only providing the Last most error produced which is stored... Continue Reading →
Secret Codes And SQL Server, Part 1: Writing Our Own Encryption Algorithm and Cracking it.
After my last post on The Arcane Science of Bitwise Logic and SQL Server I was asked a couple of questions on where it's used so I thought I'd write a follow up post. At first I was going to write something on bitmaps but then a thought of another area where bitwise logic is... Continue Reading →
The Arcane Science of Bitwise Logic and SQL Server
Bitwise logic, it seems is one of those ancient areas of computing that's only remembered by those old guys that have been kicking around for years. But what is it and how can we use it in SQL? Before we start looking at bitwise logic and the bitwise operators, we need to have a quick... Continue Reading →
Upgrading our Test lab from SQL 2016 to 2017 CTP with Always On Availability Groups
At SQLUndercover we decided it would be a good idea to not only upgrade our test lab but to treat it as if it were a live system carrying out an in place upgrade with minimal downtime, here's how we did it: Here is our very basic setup for this scenario, we have two availability... Continue Reading →
UNDERCOVER TOOLBOX: sp_RestoreScript – A Painless way to generate SQL Server database restore scripts.
(Latest Version 1.8 - 23 November 2020) I'm sure we've all been there, we need to restore a database to 11:34am, four days ago. What's the first step? To go off hunting down the relevant full and differential backups and then figure out what transaction logs we need to play in and in what order.... Continue Reading →
Joining Datasets Side by Side, in Their Natural Order When There’s No Common Key
Here's a little something that came up the other day, we've got a couple of tables which we need to join together but there's no common key to join on. How do we go about attacking this? As an example consider the following, we've got two comma delimited strings that we need to join together.... Continue Reading →
Generating Random Numbers For All Rows in a Query and Other Funky Stuff You Can Do With Them
UPDATE: Check out Generate a Random Number for Each Row in a Query {a better way} for an alternative method that I now use for generating random numbers using CRYPT_GEN_RANDOM Here's a lunchtime quickie for you all, this is something that I've seen asked on the forums plenty of times and always gets some quite... Continue Reading →
Using SQLCMD Mode for Always On Availability housekeeping.
One way i tend to query multiple servers in one go is to use Registered servers, but there are times when I might need to run something against a specific set of servers which i do not have a Registered servers group for, or maybe i need to select these servers dynamically. Maybe i do... Continue Reading →
