Skip to content

Stéphane Haby

Stéphane Haby has more than 20 years of experience in Microsoft solutions, specializing in the installation, migration, best practices, and performance analysis of Microsoft SQL Server, as well as Microsoft Business Intelligence solutions (SharePoint, Office) and .NET development for the banking sector. A former Microsoft Most Valuable Professional (MVP) and early adopter of Microsoft Team System in France, he has authored several technical articles. He holds Microsoft Certified Solutions Associate (MCSA) and Expert (MCSE) for SQL Server, MCTS, MCITP for SQL Server 2008, and ITIL V3 Foundation certifications. His industry experience covers chemicals and pharma, banking, and financial services.

182 posts since April 2011

SQL Server Tips: an orphan user owns a database role

A few days ago, I conduct an audit to detect all orphan’s windows accounts in a database and I was surprise to have an error during the drop user query.   The first step is to find all orphan’s windows accounts in a database USE [dbi_database] GO /*Step1: Search the orphan user */ SELECT * FROM sys.database_principals a LEFT OUTER… 

SQL Server Tips: Deactivate the Customer Experience Improvement Program (CEIP)

Before SQL Server 2016, you had the possibility to check the case “Send Windows and SQL Server Error Reports….” during the installation if you want to be a part of the Customer Experience Improvement Program (CEIP). In SQL Server 2016, after the installation, all of the CEIP are automatically turned on. Why? SQL Server and SQL Azure share the same… 

SQL Server 2017 RTM is available: time to try!

Now SQL Server 2017 RTM  is available. 😀 The first step is to go to the Evaluation Center here After completing the registration with your contact information, you download the file “SQL Server 2017-SSEI-Eval.exe” Run SQL Server 2017-SSEI-Eval.exe and now it begins! A first screen gives me 3 choices to install SQL Server Basic: easy and fast to download and… 

SQL Server 2016: New Dynamic Management Views (DMVs)

In SQL Server 2016, you will discover a lot of new Dynamic Management Views(DMVs). In this article, I will just give you a little overview of these useful views for us as DBA. SQL Server 2012 has 145 DMVs and SQL Server 2014 has 166 DMVs. Now, SQL Server 2016 has 185 DMVs. How to see it? It is very… 

One-day workshop with Slava Oks for SQL Server on Linux

Few weeks ago, David Barbarin and I went to the Tugar IT  in Lisbon to follow the workshop from Slava Oks: Bringing SQL Server to Linux: Experience It was a deep dive into the code of SQL Server and Slava shows us how they achieve a universal platform regardless the operating system. On my mind, the challenge was how to… 

Migration to SQL Server 2016 with deprecated data types and Full-Text

A few weeks ago, I prepared a migration from SQL Server 2008 to SQL server 2016, I came across a case with deprecated data types and a Full-Text activated on these columns. To simulate this scenario, I downloaded and installed the Data Migration Assistant(DMA). Make sure that the .Net Framework 4.5 is installed on your machine before starting the installation… 

SQL Server 2016: patching CU with R Services

As a good DBA, I begin to be up to date with all Cumulative Update (CU) by my customers. It is the first time that I run an update for SQL Server 2016 with the CU 3. I download the CU on Microsoft website and I begin my patching campaign on all SQL server 2016 instances. The first one is… 

SQL Server 2017: Python server

After my article SQL Server 2017: first steps with Python Service, I write this article about my first test with the Python Server feature in SQL Server 2017. The installation is very simple, in the features Selection window, you have in the Shared Features, you have a Machine Learning Server (Standalone) with R and Python. I check Python to install… 

SQL Server 2017: first steps with Python Service

Last year, I written blogs about SQL Server 2016 and his integration from the R language. Just for information, you can find these blogs about SQL Server 2016 R Services here: SQL Server 2016: R Services SQL Server 2016 – R Services Tips: How to find installed packages using T-SQL? Now, the next version of SQL Server, named officially SQL… 

SQL Server 2016: Does Dynamic Data Masking works with INSERT INTO and SELECT INTO commands?

I wonder how works Dynamic Data Masking (DDM) with these two commands INSERT INTO  and SELECT INTO. First, I create a table and add some “sensitive data”: USE [DDM_TEST] GO CREATE TABLE [dbo].[Confidential]( [ID] [int] IDENTITY(1,1) NOT NULL PRIMARY KEY CLUSTERED, [Name] [nvarchar](70)NULL, [CreditCard] [nvarchar](16)NULL, [Salary] [int] NULL, [Email] [nvarchar](60)NULL) insert into [dbo].[Confidential]([Name],[CreditCard],[Salary],[Email]) values (N’Stephane’,N’3546748598467584′,113459,N’[email protected]’) insert into [dbo].[Confidential]([Name],[CreditCard],[Salary],[Email]) values (N’David’,N’3546746598450989′,143576,’[email protected]’)… 

SQL Server 2016: Does Dynamic Data Masking work with Temporal Table?

In the last IT Tagen 2016, I presented the Dynamic Data Masking (DDM) and how it worked. To add a little fun, I applied the DDM to a temporal table to see if the history table inherits also from DDM’s rules. In this blog, I explain all the different steps to reproduce my last demo. Step 1: Create the table… 

IT-Tage 2016 Informatik aktuell: feedback

Today, to finish the year, I post a brief personal impression of the IT-Tage 2016 in Frankfurt at the Hotel Maritim, where I was also be a speaker. I presented 2 sessions on SQL Server: “SQL Server Errorlog Entmystifizierung” & “SQL Server 2016: Neue Sicherheitsfunktionen”. I wasn’t the only one from dbi services who spoke at that conference: David Barbarin…