Phil Factor

Follow on

30 June 2016

Data Security: Time to be Grown-Up

How do you quickly clear a room-full of application developers, short of shouting ‘fire’ and setting off a smoke-bomb? The answer, of course, is to stand up in front of them and announce that you are giving a talk about database access-control and security. Once, at a conference, I sat through a brilliant talk on … Read more
15 June 2016

Measure of a DBA

Marketing people are often surprised when a new version of SQL Server doesn’t quite generate the atmosphere of excited anticipation that they expected. After all, people seem to get themselves in a state of frenzy when a new iPhone is introduced, and suddenly their present phone looks like a museum item. The urge to upgrade … Read more
06 June 2016

Unmasking the Dynamic Data Masking

/* Revised 27th June Dynamic data masking is a great product and solves some niche problems that come if you need to do certain testing with live data at the application level. You should, however, beware of using it as a database-level security device. I haven’t yet used it in testing because I don’t have … Read more
20 May 2016

How to Build and Deploy a Database from Object-Level Source in a VCS

It is easy for someone who is developing a database to shrug and say 'if only my budget would extend to buying fancy tools, then I could start using version control when developing or maintaining databases'. Phil Factor sets out to show that there are ways of maintaining object-level source control for SQL Server databases just using what Microsoft provides, It may not be perfect, but there are ways of doing it whatever your budget.… Read more
03 May 2016

Automatically Creating UML Database Diagrams for SQL Server

SQL Server database developers seem reluctant to use diagrams when documenting their databases. It is probably because it has, in the past, been difficult to automatically draw precisely what you want, other than a vast Entity-relationship diagram. However, you can do it without buying any third-party tool, just using some existing Java-based open-source tools; and can even automate it entirely, using SQL and PowerShell.… Read more
07 March 2016

SQL Server Table Smells

Table smells in SQL Server are just like code smells. They are just an indication that something may need to be checked or investigated. They are easy to check as well, because you can generally ferret through the object catalog metadata views to flush out the aspects that just don’t smell right. In this blog, … Read more
19 January 2016

De-duplicating Delimited Lists in SQL Server

In a recent article ‘Removing Duplicates from Strings in SQL Server’, Aaron Bertrand comes up with the interesting problem of removing duplicates from lists of strings. The example he gives is … 'Bravo/Alpha/Bravo/Tango/Delta/Bravo/Alpha/Delta' … and you want to make each word unique in the list… 'Alpha/Bravo/Delta/Tango' … You want just one occurrence of Bravo, for … Read more
24 November 2015

The SQL of the Feast Days of Western Christendom

I’ve been intrigued for a long time by the Christian feasts. Nowadays, we start getting excited about Christmas around July, and it is considered by commerce to be fair-game as a de-walletizing activity from Halloween onwards. I would like far more feast days to get excited about. Our ancestors had so many feast days that … Read more
05 November 2015

Late in the Day for a DBA

I first met Joe when I went to Woodworking evening classes several years ago. I saw him from across the room. He was at the lathe, turning a bowl. There was something about the careful, diligent way he was working that activated my DBA-dar. I approached him. “You’re a DBA, aren’t you?” I asked. He … Read more
24 September 2015

Dependencies and References in SQL Server

It is important for developers and DBAs to be able to determine the interdependencies of any database object. Perhaps you need to work out what process is accessing that view you want to alter, or maybe find out whether that table-type you wish to change is being used. What are all these dependencies? How do you work out which are relevant? Phil Factor explains.… Read more
11 September 2015

Soft Skills for the Developer

(Guest Editorial for the Simple-Talk newsletter) In the rush to recruit a developer to fill a gaping void in a development project, it is sometimes easy to forget the relative importance of the skills you need. We were building a complex middleware architecture based on SOA principles with distributed transactions. The task was daunting, and … Read more
30 August 2015

Typoglycemia: The PowerShell and the SQL

Typoglycemia is the ironic name, (derived from Hypoglycemia) given to the phenomenon that many readers can understand the meaning of words in a sentence even when the interior letters of each word are scrambled. They appear to recognize words by the outermost letters, the length, the letters used and the context. ¬†As long as all … Read more
28 August 2015

SQL Server: The Neglected Features

Have you ever experienced that moment in an exam, frantically scribbling your answer to the final question, when the invigilator looks sternly across the room and says “time’s up, now cease writing and put down your pens”? I sometimes imagine this happening to the developers in the server division of Microsoft. SQL Server has several … Read more
24 July 2015

Microsoft and Database Lifecycle Management (DLM): The DacPac

The Data-Tier Application Package (DacPac), together with the Data-Tier Application Framework (DacFx), provides an alternative way to automate the process of scripting out, or deploying a SQL Server database, reporting on changes, or checking version-drift. As such, it seems to provide an obvious cost-free start for tackling automated Database Delivery as part of Database Life-cycle Management (DLM). We asked Phil Factor if it is ready for Prime-time.… Read more
17 July 2015

Can Code Review Be Automated?

I was scanning the API of DacFx, the ‘engine’ of SSDT, and became interested in the facility it contains for automating SQL code reviews. DacFx allows you to parse the SQL code sufficiently to do static code analysis, to scan for heresies, deprecated code and code that doesn’t ‘conform to corporate policy’. Dave Ballantyne has … Read more
21 May 2015

UWP: The Platform Formerly Known as Metro

Three years ago, I listened to a keynote at a developer conference. The man from Microsoft beamed confidently at the vast auditorium and said “I can tell you confidently that in a year’s time, you will all be writing Metro applications for a huge marketplace”. We clapped, but as the keynote proceeded and we saw … Read more
14 May 2015

Spinach and Database Development

A little while ago Phil got to thinking about his garden, and the myths and misinformation that forced inferior food down the gullets of children. This was an example of bad data, and Phil wants it gone. Below is a video (and transcript) that Phil gave as the keynote of SQL Saturday Exeter. The Transcript … Read more

Join Simple Talk

Join over 200,000 Microsoft professionals, and get full, free access to technical articles, our twice-monthly Simple Talk newsletter, and free SQL tools.

Sign up