posted on Sunday, March 27, 2005 1:15 PM
by
amachanic
James Hamilton on SQL CLR: "...you can write in any language now."
Tom Rizzo pointed out the other day that he and James Hamilton were featured on The .NET Show, discussing SQL Server 2005.
This was a pretty interesting show, and I recommend that readers interested in SQL 2005 features watch the webcast.
However, one quote in particular annoyed me. From James Hamilton, about CLR stored procedures:
"You're no longer forced to use T-SQL. T-SQL's absolutely still supported. Works as well as ever. But you can write in any language now."
I'm utterly sick of hearing this absolutely baseless claim repeated over and over by people both inside and outside of Microsoft! I'd originally heard it from a certain MS evangelist (name withheld to protect the guilty!) over two years ago, and believed it until I first cracked open the SQL Server 2005 Books Online.
The bottom line is, at least as of the current beta -- and according to everything I've read about the SQL CLR integration -- you MUST USE T-SQL TO ACCESS DATA. When coding a CLR stored procedure, the only way to get data from the database is to use a context connection back and execute a T-SQL query. There is no replacement for T-SQL. And you certainly cannot code data access in "any language".
I don't know why this claim keeps getting repeated. I just want to set the record straight, at least for readers of this blog. Unless MS has a huge secret change lined up that hasn't hit the beta yet, this is just how it is. So please, MS and others, stop making this claim! To me it feels like little more than a sad marketing tactic that's gone way too far.