A Lack of SQL

  • Comments posted to this topic are about the item A Lack of SQL

  • Heh... time to pull all my NASDAQ stock... 😛

    --Jeff Moden


    RBAR is pronounced "ree-bar" and is a "Modenism" for Row-By-Agonizing-Row.
    First step towards the paradigm shift of writing Set Based code:
    ________Stop thinking about what you want to do to a ROW... think, instead, of what you want to do to a COLUMN.

    Change is inevitable... Change for the better is not.


    Helpful Links:
    How to post code problems
    How to Post Performance Problems
    Create a Tally Function (fnTally)

  • At the NASDAQ, one of the larger stock exchanges in the US, only 3 of 20 developers have expertise in T-SQL. As they are building a new application, they hope to write allt of the stored procedures using C# or C++, which is a decision unlike any I've heard in years.

    I'm not sure if this is a great decision or an incredibly stupid one...

    Huh, incredible (and I do not mean that in a good way). But that link is almost 3 years old. It would be nice to get an update on how that idea worked out.

    [font="Times New Roman"]-- RBarryYoung[/font], [font="Times New Roman"] (302)375-0451[/font] blog: MovingSQL.com, Twitter: @RBarryYoung[font="Arial Black"]
    Proactive Performance Solutions, Inc.
    [/font]
    [font="Verdana"] "Performance is our middle name."[/font]

  • A while back, Robyn and I wrote a CLR workbench for Simple-Talk. I was rather pleased with it because it didn't require Visual Studio. Even the ISQL mob would have liked it. We got stuck, though, because we couldn't find a good genuine requirement for a CLR routine. We still can't. We tried Regex, but then there was a simpler way to do it via OLE. We thought of a JSON complex data type: UDTs in SQL Server 2005 have a ridiculous 8000 byte limit so that was no good. Tony, our editor-in-chief, who'd edited the excellent 'Pro SQL Server 2005 Assemblies' for Apress, couldn't think of a useful example either. Tony decided to run a competition with a $50 prize. Partial success, because the complex comparison of the 'distance' between strings is minority interest.

    The truth is that the marketing men got hold of a perfectly logical and reasonable device to provide the equivalent to external stored procedures, and puffed it up into a ridiculous and unsustainable claim that SQL-illiterate C sharp and VB developers would now be able to write clever database code without needing to learn SQL. It didn't happen, of course.

    Best wishes,
    Phil Factor

  • Hi

    I'm somewhat consernd about the clr. I've heard about problems with it's effectivity but I have not done any tests myself. I've read about people having problems once you have a certain amount of "events" that the clr needs to handle each second. How much experience have you hade with it?

    Now nasdaq should have a lot of transaction events each second.. would be very interresting to see how they do and where and for what they actually use ms clr.

  • Pretty interesting stuff.... I would think maybe for a few math functions CLR might be good, but other than that not sure when I'd actually end up using it.

    I've written a ton of C# code, and lots of VB.net code, but SQL stuff has always been in t-sql...

    Anyone else using the CLR much?

  • My question is.....

    Why would applications/web developers go outside of Visual Studio to do coding?

    --Shaun

    Hiding under a desk from SSIS Implemenation Work :crazy:

  • I've found two places - the regular expressions example is one where we've made a function that does a string comparison with regular expressions. I'm much more wary of the OA extended stored procedures than I am of SQL CLR. Additionally, aren't extended stored procedures supposed to be depracated at some point in the future.

    The other place is to write email attachments stored in my database to the file system so that they can be attached to database mail. Database mail can include one attachment through a query but we had a requirement for multiple attachments to be attached to an email. This is only possible through the picking up a semicolon delimited list from the file system. Interestingly, SQL 2008 has the filestream datatype, but we have to support SQL 2005 with our product until its regular support has been sundowned by MS for six months.

  • Since, as mentioned, the article referenced is about 3 years old, it would be interesting to hear how NASDAQ got on and if, in fact, they used CLR.

    I got the impression that the people quoted were all senior people who, while they may be able to make business decisions, may not understand what T-SQL can do and why it may not be an improvementment to use developers who only know C++ or C# and don't understand set-based processing.

    My take on CLR was that when I first encountered it I thought it was a great idea, but after writing a few test functions, I have since never found an overpowering need to use it.

    Derek

  • I have heard some people having scale issues with the CLR procedures, and I've tried to ping NASDAQ, but no word yet.

    I'd think that would bother NASDAQ, but most of us don't have any scale issues. Perhaps the CLR would work well for lots of us, but I've yet to find any good cases myself of where it do the most good.

  • One thing I'm aware of in our organization, and I think it's universal. Object oriented developers loathe TSQL. I've watched blood pressures visibly rise in meetings when the discussion comes around to the database (and no, it's not because of me... well, all the time) and how to retrieve data from it. They want to be able to use their coding languages to directly access and control the database and they intensely hate suggestions otherwise. One of our biggest and newest undertakings (which is to finish a project that's failed for the last four years due to bad management and bad design) is going to use nHibernate because the manager and lead developer (same guys that have failed for four years) on the project absolutely despise TSQL. They found a way around it and they're singing to the sun (despite not having written a single line of code, let alone deployed any to production or maintained it over time) that they've solved the "problem" with databases.

    I honestly expect this trend to speed up and grow.

    I also expect more badly performing databases to be out there. Consultants take note.

    "The credit belongs to the man who is actually in the arena, whose face is marred by dust and sweat and blood"
    - Theodore Roosevelt

    Author of:
    SQL Server Execution Plans
    SQL Server Query Performance Tuning

  • Leave it to me to address the real pressing issues... :hehe:

    Loved the fact that the blooper reel today was -part- of the blooper reel. 😀

    Hmm, I still have yet to explore the ins-and-outs of the CLR at all. I guess the real question is, has anyone out there found a reason that they needed to use it, and why?

    Found this forum topic "Actual Reason to Use CLR" on here from last year:

    http://www.sqlservercentral.com/Forums/Topic365107-386-1.aspx

  • Why does a developr leave VS?

    Because you use the right tool for the job. I come to SQL Server as the only developer in a small shop that has no DBA. We have a mixed environment that includes IBM System i, SQL Server 2000 and 2005, and a bunch of Access databases. I program in RPG, COBOL, VS.NET, and T-SQL. I try stay away from Access if I can help it.

    All new development is in VS.NET and the databases are SQL Server databases.

    Why do I leave VS.NET? Because, IMO, T-SQL is a better tool because it's specific to the task of writing stored procedures. I'm a believer in splitting the database from the application and using the tools appropriate to the layer your working in.

  • skjoldtc (9/15/2008)


    Why does a developr leave VS?

    Because you use the right tool for the job. I come to SQL Server as the only developer in a small shop that has no DBA. We have a mixed environment that includes IBM System i, SQL Server 2000 and 2005, and a bunch of Access databases. I program in RPG, COBOL, VS.NET, and T-SQL. I try stay away from Access if I can help it.

    All new development is in VS.NET and the databases are SQL Server databases.

    Why do I leave VS.NET? Because, IMO, T-SQL is a better tool because it's specific to the task of writing stored procedures. I'm a believer in splitting the database from the application and using the tools appropriate to the layer your working in.

    The question was implied -

    Why write .Net code outside of VS?

    You answer was T-SQL in SQL Server and .Net in VS which I totally agree with. 😉

    --Shaun

    Hiding under a desk from SSIS Implemenation Work :crazy:

  • This is such a silly turf war.

    I spent a number of years doing C++ (and loved it). TSQL and C# are very different tools and they solve very different types of problems.

    To use procedural techniques on set operations is stupid. Looping through operations that should be handled by the database engine is a waste of time.

    To use SQL within complex procedural logic is just as foolish. With more and more complex business logic in systems, writing procedural functions, triggers etc. in a language whose procedural functionality is not much beyone GW Basic (primitive user defined structures, no inheritance, no object specific methods, no real polymorphing) is equally foolish.

    The right tool for the right job.

    ...

    -- FORTRAN manual for Xerox Computers --

Viewing 15 posts - 1 through 15 (of 47 total)

You must be logged in to reply to this topic. Login to reply