SQLServerCentral - www.sqlservercentral.com

A community of more than 1,600,000 database professionals and growing

Featured Contents

The Voice of the DBA


We are frail, fragile creatures. I think this is one of the main reasons I push for and try to work in an agile, DevOps style of development. I know that I make mistakes, as do others. My goal is often to ensure our system, our process, our way of working can transcend those mistakes and we can still be effective. We can use automation and regular examination of what works and what doesn't to ensure our system works well and isn't overly dependent on one person.

Part of dealing with mistakes and failures is learning from them. Not only do we need to learn ourselves, and avoid repeating mistakes, but we also need to learn to forgive others. I thought about this as I was reading Derik Hammer's post on Active Forgiveness. In his post, he covers the situations where we acknowledge mistakes without a punishment. Instead, we forgive the act and go to work on finding ways to prevent the same situation from happening in the future.

I think this is one of those concepts and practices that are very difficult for most leaders, and maybe more followers. We don't want to excuse the behavior, and we certainly don't want to tolerate this in the future. What we want is for this person, and others, to learn from the mistake and work to prevent it in the future. What often happens is that we blame the person, we're glad we're not the person, and we may not learn a lesson because we think that we wouldn't make the same mistake.

Throughout my career I've seen the same mistakes occur over and over. Sometimes the same person makes a mistake again, but often different people make the same mistake because there wasn't a product retrospective where everyone learned for the future. Having a blameless meeting where discussions take place, mistakes aren't minimized, and everyone learns is hard, but it is important if we are going to improve our teams performance over time.

I'd encourage you to try to find ways to learn from failures and grow. Forgive others actively, but don't minimize the mistake. Hopefully you can also help your management learn to do this.

Steve Jones from SQLServerCentral.com

Join the debate, and respond to today's editorial on the forums

The Voice of the DBA Podcast

Listen to the MP3 Audio ( 3.1MB) podcast or subscribe to the feed at iTunes and Libsyn. feed

The Voice of the DBA podcast features music by Everyday Jones. No relation, but I stumbled on to them and really like the music.


Redgate University

Self-paced online training courses with easy to follow classes on getting started, exploring advanced features, and making the most of Redgate products. Learn the fundamentals, best practices, and top tips from the experts - Redgate’s Microsoft Data Platform MVPs and engineers.
Start Learning

SQL Provision

SQL Provision: Create, protect, & manage SQL Server database copies for compliant DevOps

With SQL Provisions virtual cloning technology, databases can be created in seconds using just 1MB of storage, and sensitive data can be anonymized or replaced with realistic data to ensure it is protected as it moves between environments. Download your free trial

Featured Contents


Microsoft SQL Server Utilities and Tools

Konstantin Taranov from SQLServerCentral.com

Useful free and paid utilities and tools for Microsoft SQL Server - complete list of 275 Utilities More »


Protecting SQL Server Data Using Static Data Masking

Additional Articles from SimpleTalk

In order to protect data and comply with regulations such as the GDPR and HIPAA, databases used by developers and testers must not contain private and sensitive data from production databases. To help DBAs protect data, Microsoft have released a new feature as part of SSMS called Static Data Masking. In this article, Greg Larsen demonstrates how to use this new feature. More »


Keeping sensitive Data secure outside of Production

Part of the complication of implementing DevOps into database development is the involvement of data. Microsoft MVP Grant Fritchey explores the use of dynamic data masking and the strategies that can protect the data when it moves into less secure environments like development and test. More »


From the SQLServerCentral Blogs - Optimizing for Ad Hoc Workloads

Bert Wagner from SQLServerCentral Blogs

Watch this week’s episode on YouTube. The execution plan cache is a great feature: after SQL Server goes through the effort... More »


From the SQLServerCentral Blogs - Data Warehousing Tip #5 – Use surrogate keys

ChrisJenkins from SQLServerCentral Blogs

My fifth data warehousing tip is to always use surrogate keys for your dimension and fact tables. Surrogate keys are... More »

Question of the Day

Today's Question (by Steve Jones):

I run this code on SQL Server 2017:

CREATE TABLE dbo.SalesOrderHeader
( OrderKey TINYINT IDENTITY(1, 1) 
, CustomerName VARCHAR(30)
INSERT dbo.SalesOrderHeader (CustomerName) VALUES ('Andy')
INSERT dbo.SalesOrderHeader (CustomerName) VALUES ('Brian')
INSERT dbo.SalesOrderHeader (CustomerName) VALUES ('Steve')

This adds three rows. Now I run this:

SELECT IDENT_INCR('dbo.SalesOrderHeader') 

What is returned?

Think you know the answer? Click here, and find out if you are right.

We keep track of your score to give you bragging rights against your peers.
This question is worth 1 point in this category: IDENTITY Property.

We'd love to give you credit for your own question and answer.
To submit a QOTD, simply log in to the Contribution Center.


T-SQL Querying (Developer Reference)

Squeeze maximum performance and efficiency from every T-SQL query you write or tune. Four leading experts take an in-depth look at T-SQL’s internal architecture and offer advanced practical techniques for optimizing response time and resource usage. Get your copy from Amazon today.

Yesterday's Question of the Day

Yesterday's Question (by Steve Jones):

I run this code:

>>> North
['Ravens', 'Steelers', 'Browns', 'Bengals']
>>> North.sort() 

Now, what is the value of North?

Answer: ['Bengals', 'Browns', 'Ravens', 'Steelers']


The sort method sorts the list in place and updates the variable. 

Ref: Sort() - click here

» Discuss this question and answer on the forums

Database Pros Who Need Your Help

Here's a few of the new posts today on the forums. To see more, visit the forums.

SQL Server 2017 : SQL Server 2017 - Development

Best way to track "errors" in Stored Procedure - Hi Guys, I need advice. I have almost 30 Update statements with different logic in one stored procedure. If I...

Which years are similar. - For fun and learning only. =================== =================== Which years are similar to a specific year. For example from which years can the calendar be...

What it means to atomize values in 1st normal form - Suppose we have the following table.  We have everything for the address packed into one cell.  Also, we have two...

Any video courses that teach Execution Plans? - Hi, I am  aware that  Redgate  has a free  ebook  that  explains  execution  plans.  I was wondering  if there were  video ...

When does SQL decide to load all of an index in to memory? - We're having a bit of a performance issue with one of our tables, which seems to be behaving in a...

SQL Server 2016 : SQL Server 2016 - Administration

Reporting Services Migration Problems - I am trying to get SSRS running on Server #2, copied from Server #1 What I've done so far. - Backup Reports...

ssis Configuration - Morning all. Wonder if anyone can help.  I've seen SSIS Packages set up so that you can configure the db and...

HA VS DR - What is the difference between high availability  and disaster recovery ? Also  proxy and credentials

upgrade to 2016 causing performance problems - Hi all Experts, We have strange problem (at least for our case), we have database in 2012 which was restored...

SQL Server 2016 : SQL Server 2016 - Development and T-SQL

MySQL - Hello Community, It is my opinion that I have some SQL and SQLserver skills. Apart from the SQL, I have no...

fetch rows when condition macthes - Hi I have a scenario where a table has column which is either Error or Info or warning.  I need to fetch...

Sort already comma separated list - Hi I have values like this in a column which basically is the exact same thing if sorted . ORM;

SQL Server 2014 : Administration - SQL Server 2014

Easy (I think) mdf file size question - So is there any advantage to splitting up a data file that is getting close to 2TB if all the...

ODBC Driver 17 for SQL Server - Linked Server failure - I have a problem where my linked server works for about 12 minutes and then fails.  Sorry I do not...

Database refresh from Production DB to Test DB in Sql server 2014 - Hello, I would like to know the what's the best way i can do Database refresh from Production DB to Test DB...

SQL Server 2014 : Development - SQL Server 2014

Tuning Query In Stored Procedure - Below table contains five millions of records. My Table Structure CREATE TABLE .(   (50) NOT NULL,   (2) NOT NULL,  ...

SQL Server 2008 : SQL Server 2008 - General

Reporting Services scheduling- hourly between 8 and 5 impossible? - Trying to get a report to run daily between certain hours. I can set a start time and an "end...

SQL Server 2008 : T-SQL (SS2K8)

How to insert multiple records from fields in select record - I am trying to take results from multiple fields from single rows that are not null and put them in...

SQL Server 2008 : SQL Server 2008 Administration

Activity Monitor not starting, always being paused - I am running SQL2008 Server Standard edition on Server 2008 x64. When I try to run the Activity Monitor in...

SQL Server 2005 : Administering

sql express 2005 database has dissapeared after restore. - This is live, old I know, but I really need advice. So I had a corrupt db.  Backups all screwed.  So...

This email has been sent to {user_email}. To be removed from this list, please click here.
If you have any problems leaving the list, please contact the webmaster@sqlservercentral.com.
This newsletter was sent to you because you signed up at SQLServerCentral.com.
Feel free to forward this to any colleagues that you think might be interested.
If you have received this email from a colleague, you can register to receive it here.
This transmission is ©2018 Redgate Software Ltd, Newnham House, Cambridge Business Park, Cambridge, CB4 0WZ, United Kingdom. All rights reserved.
Contact: webmaster@sqlservercentral.com