Editorials

Reader Feedback (SOLID and TimeStamp)

Four Days Left to Register for SSIS Class
Many of our readers have taken advantage of the SSIS Virtual courses taught by SQL Server MVP Eric Johnson. Response has been overwhelming. You have access to all 12 sessions starting May 1st and ending May 31st. Learn at your own speed, at your own time, with these on demand HD training sessions.
Register Today

Reader Feedback (SOLID and TimeStamp)
Today we have a lot of feedback from our readers regarding the last two topics of SOLID and TimeStamp.

TimeStamp Feedback
Greg Writes:
Just read your post in the newsletter. What tip were you referring to on MSSQLTips.com?

Was it this tip: http://www.mssqltips.com/tip.asp?tip=2322

If so, this is comparing this to MySQL not Oracle.

Editor:

You are correct. That is a good link to the posting I was reading. It was comparing MySql and DB2, not Oracle.

Thanks for the heads up.

It turns out that these two follow the ANSII standard for a TimeStamp data type, storing a physical DateTime value instead of a binary value as in MS SQL Server…

David Tweets:

Someone must’ve mentioned that TimeStamp became Rowversion in SQL 2005, right? @benstaylor

Editor:

Well, actually, no I didn’t mention the change. And the omission is significant.

The TimeStamp data type was intended to be deprecated and replaced with the rowversion data type in SQL Server 2005. It works almost exactly the same (see http://msdn.microsoft.com/en-us/library/ms182776.aspx). The exception is that you can create a TimeStamp column in a table without naming it. If you create a rowversion column, you must provide a name.

The TimeStamp datatype has been maintained since SQL Server 2005 as a synonym of rowversion. This means that it works, but you shouldn’t use it because it is deprecated syntax. But there is a bug when using it in SQL Server Management Studio (SSMS). This bug has been out there since the 2005 release. This bug also impacts the Entity Framework designer.

“So I keep reading that the timestamp type is deprecated and we should use rowversion whenever possible. At the same time, Management Studio connected to a 2005 server won’t let me use rowversion and forces me to use timestamp when creating/modifying a table. Am I missing something?“


See the bug posting
for more details.

Thanks, David for the feedback.

SOLID Feedback
John:

I just wanted to say that I’ve enjoyed the articles on SOLID code – I’m more of a DBA these days but it’s good to see that someone is still promoting quality software development.

Steven:

I’ve writing code since 1970 and in the 2000 I took a system from the mainframe to Microsoft asp and SQL Server. For the last ten years I have been part of the Client Server team at the County and have worked on lots of projects. I have been trying to learn what Object Oriented coding is for at least 10 years. What you wrote about Dependency Inversion really helped me see a deeper meaning to what is it all about.

Do you have an experience you’d like to share from attending dbTechCon? Do you have topics you’d like to see discussed in our daily editorials? Drop me a quick note on facebook, twitter or Email me at btaylor@sswug.org.

Cheers,

Ben

$$SWYNK$$

Featured Article(s)
The Integrated Taxonomic Information System – The Scientist’s List of Life
The ITIS database is unusual, in that it is freely downloadable in its entirety. This means you can store it on your own server and use it offline. For people who know databases, this is useful since you can see the structure and organization of the data and craft your own queries. Downloadable formats are offered for Informix, Microsoft SQL Server and MySQL.

Featured White Paper(s)
Upgrading to Microsoft SQL Server 2008 R2 from Microsoft SQL Server 2008, SQL Server 2005, and SQL Server 2000
More than ever, organizations rely on data storage and analysis for business operations. Companies need the ability to deploy… (read more)

Featured Script
sp_ShowInformation
Shows information on all database files, locations and sizes…. (read more)