The Bit Bucket

Opinion: Start and finish meetings on time - don't wait for stragglers

It’s bad enough today that 90% of all online meetings seem to start with endless “can you all hear me?”, “can you see this?”, “I can hear you but I can’t see it”, “John’s trying to connect but can’t”, etc. etc.

But the one that annoys me most is:

Let’s give it a few more minutes for stragglers to connect in

Why exactly?

This often happened with in-person meetings too but it seems even more prevalent now with online meetings. In both cases, it’s inappropriate.

2018-09-18

SQL: Should we use schemas other than dbo in SQL Server databases? (Part 2)

In a recent post, I described the first reason why I think you should be using schemas apart from dbo in your SQL Server database designs. It was to provide a form of grouping like you use with files in your filesystem, and to avoid prefixes. Now we need to talk about the second main reason for using schemas.

Security Boundary

I need to start by saying that if you’re idea of database design and access is to have an ORM that builds queries on the fly and needs access to the entire database without any form of security control apart from what your application provides, you might as well stop reading this post here.

2018-09-17

Book Review: The Rosie Project : A Novel - by Graeme Simsion

One of my continuing projects is to run a series of podcasts with people that I think are interesting in some way, from the data community. I tend to do them in bursts, normally when there’s a new version of SQL Server coming. (I’m about to publish a series of SQL Server 2019 podcasts). One person that I interviewed early on though was Graeme Simsion. You can find the podcast here. It was show 10 back in December 2005. Graeme was a well-known Data Modeler.

2018-09-14

Shortcut: Using Activity Monitor in SQL Server Management Studio

This is a quick tip but an important one. I see many people using SQL Server Management Studio (SSMS) and they aren’t aware of Activity Monitor.

While there are many clever things that we can do with queries, to interrogate the health of the system, don’t forget that there is quite a bit of useful information in Activity Monitor, and it’s easy to get to.

There are two basic ways to launch Activity Monitor. The first is to right-click the server in Object Explorer:

2018-09-13

SDU Tools: Get SQL Server Table Schema Comparison

In a recent post, I mentioned that I often need to do a quick check to see if the schema of two SQL Server databases is the same, and how our GetDBSchemaCoreComparison procedure can make that easy. On a similar vein, I often need to get a detailed comparison of two tables.

In our free SDU Tools for developers and DBAs, there is another stored procedure called GetTableSchemaComparison to make that easy as well. It takes the following parameters and also returns a rowset that’s easy to consume programmatically (or by just looking at it):

2018-09-12

Opinion: Don't chastise people for not doing a bot's work

I spend a lot of time consulting across a variety of companies. Often I’m there doing what we consider “mentoring” and that means I’m there on and off for longer periods. Because of that, I often have to do the same compliance “training” that their own employees do.

The first thing I’d comment on is that unfortunately this sort of compliance ends up being counted against the company’s training budgets. Let’s be clear:

2018-09-11

SQL: Should we use schemas other than dbo in SQL Server databases? (Part 1)

In violation of Betteridge’s law of headlines, the answer is yes. When designing SQL Server databases, there are several reasons why you should be considering using schemas and not just having all your objects in the dbo schema.

This is a good example though, of where good advice regarding SQL Server dates. In SQL Server 2000 days, it was sound advice to keep all your objects owned by dbo (and at the time automatically part of the dbo schema), to avoid ownership chaining issues. That’s because ownership and the containing schema were one and the same concept.

2018-09-10

Book Review: How to win friends and influence people - Dale Carnegie

Using Audible to listen to books has allowed me recently to get through a lot of books that I would never have had time to get through. I’m determined to get through some classics as well. Self-improvement books don’t come more classic than Dale Carnegie’s How to Win Friends and Influence People so I listened to that too.

I know several people who say that, in the 1990’s, attending one of the seminars associated with this book, changed their lives. I can understand how that’s possible in some situations.

2018-09-07

Shortcut: Using the built-in web browser in SQL Server Management Studio

SQL Server Management Studio (SSMS) is a flexible tool. One thing that often surprises people is that it hosts a version of Microsoft Internet Explorer, right inside the application.

Why would SSMS have a web browser I hear you ask?

Well this web browser lets browse URLs, and reference links, without leaving the tool.

You can open it directly by choosing Web Browser from the View menu:

On my machine, it’s under the Other Windows section. In fact, it’s the only window there on my machine, which makes you wonder why it has a separate section in the first place.

2018-09-06

SDU Tools: Get SQL Server Database Schema Core Comparison

I often need to do a quick check to see if the schema of two SQL Server databases is the same.

In our free SDU Tools for developers and DBAs, there is a stored procedure called GetDBSchemaCoreComparison to make that easy. It takes the following parameters and returns a rowset that’s easy to consume programmatically (or by just looking at it):

@Database1 sysname -> name of the first database to check @Database2 sysname -> name of the second database to compare @IgnoreColumnID bit -> set to 1 if tables with the same columns but in different order are considered equivalent, otherwise set to 0 @IgnoreFillFactor bit -> set to 1 if index fillfactors are to be ignored, otherwise set to 0

2018-09-05