SQLServerCentral - www.sqlservercentral.com

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

Featured Contents

Featured Script

The Voice of the DBA

Muddle Through

I used to work in the restaurant business. I got started after my first year at college, landing a job waiting tables in a new hotel. It was eye opening for me to see just how stressful and difficult that job can be. However, I wanted to earn money and jumped at opportunities. When we needed room service waiters to pick up shifts and elevators didn't work, I carried trays up staircases, taking advantage of the opportunity. When a bartender didn't show up, I volunteered to take the lunch shift. I had no idea where things were in the bar, I was 19 and didn't know how to make drinks, and I'd make less money, but it was an opportunity that I knew would pay off at college.

It did, and at the next three jobs, I wound up me getting hired, starting work, and having either no one to train me that day or a very busy shift where I was mostly on my own to survive. I had to muddle through and learn on the fly. The ability to do that, without panicking  being overwhelmed, or giving up has served me in quite a few positions since then.

When I started working for various companies as a developer or DBA, I found myself in similar situations. Problems would arise, often the day or week I started, and I'd have to solve them. Usually with DBA positions,  I was the only one there, so I couldn't depend on anyone else. It was  a good thing as I often found that sysadmins or developers were not managing or configuring databases in an efficient way. As I gained experience, I could make more and more of a difference earlier on at each organization.

Kevin Feasel wrote a bit about his experiences with Lucerne (near the bottom), muddling through the need to write queries. I've seen similar stories from other friends working with SSIS, SSRS, Redis, Azure, and more. They don't know a lot, but they dig in and learn, making mistakes, but getting tasks done for their employer.

The ability to work through adversity, have some confidence, learn quickly, and be effective are valuable skills. Those data professionals that can do so often find more opportunities, challenges, they grow their skills, and get more compensation. Those that find reasons to avoid learning, that lack confidence in their ability to find a way to solve a problem, or are unwilling to tackle challenges often stagnate a bit. I'd like to think there are more of the former than latter in this business, but I constantly seem to find people that just look to repeat the same work they've done over and over for a long time.

It can be mentally difficult to start a project using technology with which you have little familiarity. It can be disconcerting to have someone ask you a question that you can't answer because you've barely begun to learn. That ability to muddle through, to keep learning, accepting that you don't have answers but can find them, knowing that some of your answers will be wrong and you'll need to backtrack. That ability to muddle through will serve you well. 

I'd urge you to develop it.

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 ( 4.0MB) 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.


Database migrations inside Visual Studio

Feeling the pain of managing and deploying database changes manually? Redgate ReadyRoll creates SQL migration scripts you can use to version control, build and release, and automate deployments. Try it free

SQL in the City

Sign up for more free training from Redgate

Redgate has committed to hosting a free virtual event in every quarter of 2018, and will be kicking this off on February 28 with a livestream themed around data privacy and protection. The agenda has now been released, so you can see who will be presenting, what they will be presenting, and how you can tune in to watch. Find out more about the sessions and register your place

Featured Contents


Azure DWH part 26: Creating your ASDW in Cloud Shell using PowerShell

Daniel Calbimonte from SQLServerCentral.com

In this article, we will show how to create an ASDW in PowerShell using the Cloud Shell. More »


How to Test SQL Server Functions and Procedures using SQL Prompt

When writing functions or procedures, a common chore is to devise and implement the tests that ensure that the routine always works as expected. More »


When Does Index Size Change Index Choice?

Additional Articles from Brent Ozar Unlimited Blog

Erik purposely fragments indexes trying to slow down queries. More »


From the SQLServerCentral Blogs - Getting Your SET Options

Steve Jones from SQLServerCentral Blogs

Have you ever used @@options? I haven’t typically needed this, but there are times that you might wonder what options... More »


From the SQLServerCentral Blogs - Backups of backups or How long is my backup really available?

Kenneth Fisher from SQLServerCentral Blogs

I’ve said before that backups are at once one of the easiest things DBAs do, one of the most important,... More »

Question of the Day

Today's Question (by Evgeny Garaev):

What are the minimal prerequisites for creation of a temporal table in a SQL Server 2016 database?

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: SQL Server 2016.

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


Expert Scripting and Automation for SQL Server DBAs

Automate your workload and manage more databases and instances with greater ease and efficiency by combining metadata-driven automation with powerful tools like PowerShell and SQL Server Agent. Automate your new instance-builds and use monitoring to drive ongoing automation, with the help of an inventory database and a management data warehouse. Get your copy from Amazon today.

Yesterday's Question of the Day

Yesterday's Question (by Steve Jones):

I have two data frames that I want to compare. The first is passing.2017, and contains this data:

  rank        player.name year2017 yards2017
1    1          Tom Brady     2017      4577
2    2      Philip Rivers     2017      4515
3    3   Matthew Stafford     2017      4446
4    4         Drew Brees     2017      4334
5    5 Ben Roethlisberger     2017      4251

The second is passing.2016, with this data:

  rank   player.name year yards2016
1    1    Drew Brees 2016      5208
2    2     Matt Ryan 2016      4944
3    3  Kirk Cousins 2016      4917
4    4 Aaron Rodgers 2016      4428
5    5 Philip Rivers 2016      4386 

If I want to combine these so that my final data set has 5 rows and compares the top ranked passers, which function should I use?

Answer: passing.compare <- cbind(passing.2016, passing.2017)


The cbind() function will combine two data sets and add the columns from one to the side of the columns from the other. This code will produce this dataset

  rank   player.name year yards2016 rank.1      player.name.1 year2017 yards2017
1    1    Drew Brees 2016      5208      1          Tom Brady     2017      4577
2    2     Matt Ryan 2016      4944      2      Philip Rivers     2017      4515
3    3  Kirk Cousins 2016      4917      3   Matthew Stafford     2017      4446
4    4 Aaron Rodgers 2016      4428      4         Drew Brees     2017      4334
5    5 Philip Rivers 2016      4386      5 Ben Roethlisberger     2017      4251 

Ref: Combine R Objects by Rows or Columns - click here

» Discuss this question and answer on the forums

Featured Script

Compression estimates

Evgeny Garaev from SQLServerCentral.com

The script executes the procedure 'sp_estimate_data_compression_savings' for each physical object in the database for which the page compression has not been implemented. It shows the result in the tabular form ordered by the size of the object in descending order.

Just execute the script against the user database on which you are planning to implement compression. Bare in mind that the compression is available only on certain editions of MS SQL Server - https://docs.microsoft.com/en-nz/sql/sql-server/editions-and-components-of-sql-server-2016.

I also found that on some databases the procedure 'sp_estimate_data_compression_savings' causes deadlocks and only way to fix that is set instance wide MAXDOP option to 1 in order to prevent parallel executions.

More »

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 2016 : SQL Server 2016 - Administration

Training? - I'm not sure if this is the proper place to post this but I'm sure someone will tell me if...

Data Copy for reporting purposes - Hi! @ present we have a reporting server which is for internal and external users..they run regular reports. - we keep the...

Password policy for system logins - Hi, I would like to hear your opinion on password policy for system accounts.  (not the service accounts) For our staff members...

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

Count(*) with LIKE - I am working on converting an Excel formula to Excel.  I have successfully moved two other Excel reports to SQL...

Please delete this post - Steve please have this post deleted.

Performance improvement following a disable indexes, shrink, enable indexes - but why? - I'm stumped and need the assistance of the wider community to understand what is going on. The database in question has...

Help me with the SELECT statement please ? - Good Day  For the sake of simplicity, I just added one members records. What you see is this member had enrollment...

SQL Server 2014 : Administration - SQL Server 2014

Need Recommendations for Document Database - We're in the process of a data migration from one LOB tool to another over this weekend. Part of the...

Developer edition to standard edition - Good day experts, At my new job we have a sql 2014 developer edition in production and its a clustered instance.We...

SQL Server 2014 : Development - SQL Server 2014

Business Day Function - Count today as 1 - Hi, I am having an issue with my below function.  I want it to count the start day as 1...

SQL Server 2012 : SQL 2012 - General

Can't get rid of databases - Hello, I'm trying to uninstall SQL Server and reinstall it from scratch. I tried once and it didn't work. Here's what...

SQL Server 2012 : SQL Server 2012 - T-SQL

Two tables that they have foreign keys pointing to each other - Hi, I have an unusual problem in that I have to remove records from two tables that they have foreign keys...

SQL Server 2008 : SQL Server 2008 - General

Genreal Query Question - Hello folks, I've spent more time than I'd like to admit searching this topic, but I really feel like I'm not...

db slow ? - Hello all, we have a database under sql server 2008. This db contains some tables and one table contains 600 000 records...

SQL Server 2008 : SQL Server Newbies

INSERT running slow in SQL 2016 - Good Morning Experts, We had a database on SQL Server 2012. INSERTS were running fine. We migrated this database to 2016...

Programming : TFS/Data Dude/DBPro

Visual Studio Data Tools 2017 - TFS lock icons missing and other issues - Hi all We've just installed a test instance of Microsoft SQL Server Data Tools for Visual Studio 2017 (Version 15.3.5) and...

Data Warehousing : Integration Services

Type or namespace name 'Runtime' does not exist in the namespace 'Microsoft.SqlServer.Dts' - Hi experts! So I'm running into the following error after adding connection managers to an ssis package: "The type or...

Data Warehousing : Analysis Services

"Attribute Key Cannot Be Found When Processing" when it does exist in the DW - Hello, We have a cube that exists on a Dev, Test, and Prod environment.  For all three environments, they are refreshed...

SQLServerCentral.com : SQLServerCentral.com Website Issues

Why can't I paste SQL code into a post??? - I've just spent 20 minutes preparing a new post in the SQL 2008 forum. It took me that long to...

Microsoft Access : Microsoft Access

Migrated DB to 2016, having ODBC Access problem - Thanks in advance for any clues on this problem. I'm migrating several SQL Server databases from SQL2005 to SQL2016. One...

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