One of my good friends, Jason Strate (Blog | Twitter) has come up with a new meme topic that we can blog on each month. The topic revolves around Social Networking each month. This month’s topic is on blogging. The questions Jason asked us are, “Why did you start blogging and why do you currently blog?” History The blogging topic got me thinking and digging into the past. It wasn’t easy for me to recall the date of my actual first blog. I do know it was a long time ago. In order to find an estimate of that time, I took the Wayback Machine for a ride.
This is an archive of the posts published to LessThanDot from 2008 to 2018, over a decade of useful content. While we're no longer adding new content, we still receive a lot of visitors and wanted to make sure the content didn't disappear forever.
In a previous post, SQL Server Integration Services tools to have – Expression Editor & Tester, I discussed a tool that is extremely useful for preparing and maintaining expressions. Expressions are extremely common now to enforce dynamic and mobile SSIS packages. Tools like the editor make that task more efficient. Another tool that has recently been provided on Codeplex is the Configuration File Editor.
In my Are you ready for SQL Server 2012 or are you still partying like it is 1999? post, I wrote about how you should start using SQL Server 2005 and SQL Server 2008 functionality now in order to prepare for SQL Server 2012. I still see tons of code that is written in the pre 2005 style and people still keep using those functions, procs and statements even though SQL Server 2005 and 2008 have much better functionality.
A continuous integration server verifies that all of the currently committed changes play well together and reduces the elapsed time between a team member committing a change and finding out it leaves the build in a poor state. The faster we find out about a defect or unstable build, the fresher the changes are in our minds and the faster we can fix it. Delivery Pipeline – Focus of Current Post This is the second post in a multi-part series on my Continuous Delivery pipeline project. The first post discussed Continuous Delivery, defined the process I am building, and outlined the technology selections I’ve made for the project. In this post I will begin setting up Continuous Integration for the project using Jenkins as a build server, MS Build to execute builds, and BitBucket to serve as the source code repository.
When setting up and designing a merge replication publication that will utilize join filters, indexing strategies can be vital to determining design issues in the setup. Take the below query on the AdventureWorks database. SELECT <columns> FROM Person.Person JOIN Sales.SalesOrderHeader ON Person.BusinessEntityID = SalesOrderHeader.SalesPersonID JOIN Sales.SalesOrderDetail ON [SalesOrderHeader].[SalesOrderID] = [SalesOrderDetail].[SalesOrderID] WHERE Person.LoginAccount = SUSER_SNAME() The query above is a common query that is the result of designing merge replication with parameterized filters and join filters. It filters down as a parameterized filter on the system function SUSER_SNAME() and then uses join filters on SalesOrderHeader and SalesOrderDetail. This design will allow for the subscriber to this query, or publication, to only retrieve data that is matching the predicate of their SUSER_SNAME(). The value here can be seen in a publishing database that may be 500GB and the subscribers only have 200MB of data that they need to continue functioning in the business entity they belong to.
I find that often the hardest part of trying a new technology or principle is finding a project that is simple enough to work on in my spare time, yet complex enough to be useful. Several weeks ago I came up with the idea to use a common project to serve as a platform for additional projects and experiments. The first project, build an automated pipeline that will verify the project remains stable (or notify me when it isn’t) throughout its lifetime.
In my Are you ready for SQL Server 2012 or are you still partying like it is 1999? post, I wrote about how you should start using SQL Server 2005 and SQL Server 2008 functionality now in order to prepare for SQL Server 2012. I still see tons of code that is written in the pre 2005 style and people still keep using those functions, procs and statements even though SQL Server 2005 and 2008 have much better functionality.
This will be my contribution to the T-SQL Tuesday Challenge that was originally created by Adam Machanic. This month, my good friend Allen White (Blog | Twitter) is hosting the challenge. The topic he has chosen is, “What T-SQL tricks do you use today to make your job easier?” I enjoy this topic and understand why he chose it. As our experience grows, we compose dozens if not hundreds of methods in order to get our job done quickly or simply. We’ve all been faced with challenges and found the trick to resolving them given our own unique installations of SQL Server. This is a great way to get a compilation of everyone’s tricks and see how we may share them with the community.
I met Denis and Sebastian over a year ago when I attended their session on test driven database development. Since then, I have been using tSQLt to add unit tests to my database. The following post was written by Denis Lloyd Jr. About the Series Test case heuristics are patterns used to help decide the next test to write and ensure test coverage of requirements. This is the second post on a series of test case heuristics pertaining to database testing.
The twenty-fifth installation of T-SQL Tuesday is brought to us by Allen White (twitter | blog). The topic is “T-SQL Tricks”. As a database administrator, one of the most common calls I receive from developers is, “I’m getting an error saying the log is full.” This could happen for a variety of reasons: • Data was being loaded into the database. • An index was being built, rebuilt, or reorganized. • A DBCC CHECKDB was running.