T-Sql rant

  • Even though we're drifting slightly off topic:

    foxjazz (3/14/2009)


    Do any of you know a language other than English? Spanish, as a second or German?

    I do know a language other than English: German. It's actually my first language 🙂

    I could try to avoid dealing with English the same way others are trying to avoid T-SQL.

    But there's one problem to it:

    If I'd refuse to get familiar with English I'd be in big trouble doing my job...

    On the other hand, if I'm trying to use it (like in this forum), others usually won't complain about my mistakes (e.g. grammar, spelling a.s.o.) but rather help me with the subject I'm faced with.

    My English and your T-SQL skills are pretty much the same thing:

    if we don't get used to it, we won't be able to communicate. The only difference is that I need to communicate with real life people vs. you need to communicate with a database...

    I also could write my posts in German and complain about getting no or little response.

    What would you say in this case: would this be a flaw of this forum or should I try to improve my English?

    @ Jeff:

    Jeff Moden (3/14/2009)


    Heh... definitely not. English only here.

    I wouldn't be so sure about that... 😛

    So, if you need a translator from German to English or vice versa, let me know! 😉



    Lutz
    A pessimist is an optimist with experience.

    How to get fast answers to your question[/url]
    How to post performance related questions[/url]
    Links for Tally Table [/url] , Cross Tabs [/url] and Dynamic Cross Tabs [/url], Delimited Split Function[/url]

  • foxjazz (3/14/2009)


    Do any of you know a language other than English? Spanish, as a second or German?

    Because using English is dominant, I struggle with German as a second. I can use it, but why should I be made to use it?

    OK, here's another issue. you constantly present yourself as a victim, though you are not. I doubt that you are "made" to use these languages. Rather you choose to cooperate with other's requirements to use other languages because it benefits you. You just resent having to make that choice in order to receive the benefits of it. This does not make you a victim, it makes you selfish.

    I personally am highly familiar with t-sql, but do most of my stuff in c#. Why am I forced to write in this other language?

    Again, I believe that you could quit anytime that you wanted, so you are not "forced" to do anything. Unless you are a slave, a prisoner or a child, you can choose to use t-sql or not. So stop whining about what you yourself have already chosen to do in exchange for money. You are not a victim.

    Why not have t-sql be capable of merging with other languages by preference?

    Because not nearly enough potential customers want something like this enough to make it worth the exceptional expense of implementing something pointless like this. You see professional developers like myself and many of the others here have an option that you apparently do not: We learn new languages well enough to do our job properly. Personal preference is something that I care about on my own time, not when I am being paid to do a professional job. Whether a language has the proper facilities to cost effectively implement to specs is an appropiate reason for serious criticism. Whether it is enough like C for your personal preference is just idle chit-chat.

    [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]

  • lmu92 (3/14/2009)


    @ Jeff:

    Jeff Moden (3/14/2009)


    Heh... definitely not. English only here.

    I wouldn't be so sure about that... 😛

    Heh... sorry... the "here" means "me" in this case. I understand that we have a wealth of multilingual folks on this good forum.

    --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)
    Intro to Tally Tables and Functions

  • foxjazz (3/14/2009)


    Lynn Pettis (3/14/2009)


    You know foxjazz, I find the following comment of yours insulting and ignorant on your part:

    You all that use t-sql and don't code probably never know any difference.

    You are basically saying that all of us who write using T-SQL don't write code. You don't know a thing about us and what we do at our work. I am not just a DBA at work, I am a developer and architect as well.

    I also come from a strong development background even if i didn't write code in C#. Don't presume to know what we do or don't know.

    Um, saying all that use t-sql and don't code is simply that. Lynn, since you are including yourself in this statement, I don't think you have performed adequate logic on the sentence at hand. Treat it like a query, maybe you can read it better. It is a true statement, all who don't code and only use t-sql wouldn't know any better.

    I don't think that includes you Lynn, since obviously you say you code.

    No, I understand exactly what you are saying. Anyone who only writes in T-SQL doesn't know anything. You are wrong. We are as much programmers as anyone who writes code in C# or any other language. Your problem is your ignorance in writing set-based solutions so your only recourse is to bash the language and those of us who have learned to write highly performant code in a language all you can do in is write cursor-based code that you hate.

    We have demonstrated we can take your cursor-based code and turn it into solid performant set-based cursorless code, and you won't admit your wrong.

    Go ahead, put up some more of your cursor-based code, we'll keep doing it and then you can brag to your boss how you improved the performace of your system by rewriting all that cursor-based code and improved them by eliminating the cursors.

  • I guess I just don't get why everyone here is so walled up and can't think outside the box.

    Stored procedures in sql result only in one language type, not many.

    the IDL compiler can handle multiple.

    Its really sad to see so many people stuck in a paradigm they can't think their way out of.

  • foxjazz (3/14/2009)


    I guess I just don't get why everyone here is so walled up and can't think outside the box.

    Stored procedures in sql result only in one language type, not many.

    the IDL compiler can handle multiple.

    Its really sad to see so many people stuck in a paradigm they can't think their way out of.

    You're the one who can't think outside the box, because you don't realize you are in one. Why should everything be written in C#? Use the tool that is best for the job. Languages like C# and VB.NET are best used to write middle-tier and front-end portions of applications where as T-SQL is best suited for writing database access portion of such applications. If you can't see that, it's because someone as taped shut the box you are in, and unfortunately you seem quite content to stay there in the dark.

  • foxjazz (3/14/2009)


    I haven't experienced a case where I could write a stored proc, without t-sql language .... I would love to write my stored procs in c#.

    foxjazz (3/14/2009)


    Its really sad to see so many people stuck in a paradigm they can't think their way out of.

    Heh... "And the pot calls the kettle 'Black'". 😉

    --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)
    Intro to Tally Tables and Functions

  • foxjazz (3/13/2009)


    Why couldn't they write t-sql more like C# or have a flavored compiler for t-sql so that we could work it like c# or vb depending on how you like it. (or the t-sql language which really is the worst language MS has ever put on the block). I really don't understand why the sql server group didn't do a better job of it, or is it because they were taking thier queue from ORACLE.

    Really stupid paradigm if you ask me, and I think it needs to be improved upon.

    Science is a b****, expediency is a wh***. It's not easy to sleep with science. But sql sells itself to even the lowest bidder. It's been screwing developers forever:) But sql experts know of what they speak. There is a certain quality to expediency. The seduction by the **** makes the ***** easy to forget.

    I'm a big fan of using sql for many purposes. But application development is not one of them. There Sql Server (and Oracle, MySql and DB2) goes from the golden goose to a turkey. You can have lots of fun in a trailer park. But it's not the best place for a physics lecture. Suffice it to so say there are people who agree with your general train of thought. The idea of a science of data management, like the science of mathematics, should certainly have a full blown computer science behind it. Unfortunately the computer science of sql barely exists. Application development without the idea of types and variables is rather absurd (a table in sql is not a type like an integer and certainly not a variable). It was the relational model that was intended to inject a real computer science into data management. But instead of the relational model the industry bought the farm, sql.

    I suggest you check out my blog. There you'll find the relational model wedded to the idea of an object oriented language. There's no mismatch here. A table is simply another type. A relational algebra is embedded in a imperative language that is OO. The product is Dataphor, the result is a science not expediency.

    Here's hoping you keep up the good fight and all that jazz:)

    www.beyondsql.blogspot.com

    Editor's Note: Edited to remove offensive words.

  • Go ahead, put up some more of your cursor-based code, we'll keep doing it and then you can brag to your boss how you improved the performace of your system by rewriting all that cursor-based code and improved them by eliminating the cursors.[/quote]

    you just hit the nail on the head Lynn. This guy is not only a troll he's bleeding you dry for info to fix his poor code. Leave him to stew.

    ---------------------------------------------------------------------

  • steve dassin (3/14/2009)


    foxjazz (3/13/2009)


    Why couldn't they write t-sql more like C# or have a flavored compiler for t-sql so that we could work it like c# or vb depending on how you like it. (or the t-sql language which really is the worst language MS has ever put on the block). I really don't understand why the sql server group didn't do a better job of it, or is it because they were taking thier queue from ORACLE.

    Really stupid paradigm if you ask me, and I think it needs to be improved upon.

    Science is a b****, expediency is a w****. It's not easy to sleep with science. But sql sells itself to even the lowest bidder. It's been screwing developers forever:) But sql experts know of what they speak. There is a certain quality to expediency. The seduction by the ***** makes the **** easy to forget.

    I'm a big fan of using sql for many purposes. But application development is not one of them. There Sql Server (and Oracle, MySql and DB2) goes from the golden goose to a turkey. You can have lots of fun in a trailer park. But it's not the best place for a physics lecture. Suffice it to so say there are people who agree with your general train of thought. The idea of a science of data management, like the science of mathematics, should certainly have a full blown computer science behind it. Unfortunately the computer science of sql barely exists. Application development without the idea of types and variables is rather absurd (a table in sql is not a type like an integer and certainly not a variable). It was the relational model that was intended to inject a real computer science into data management. But instead of the relational model the industry bought the farm, sql.

    I suggest you check out my blog. There you'll find the relational model wedded to the idea of an object oriented language. There's no mismatch here. A table is simply another type. A relational algebra is embedded in a imperative language that is OO. The product is Dataphor, the result is a science not expediency.

    Here's hoping you keep up the good fight and all that jazz:)

    www.beyondsql.blogspot.com

    There is nothing so honorable in this rant.

    --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)
    Intro to Tally Tables and Functions

  • I'm slightly amazed that you would compare TSQL to C and the IDL. I suppose it's possible, but SQL is a query language, designed for working with data, and sets of data. C#, VB, etc. are programming languages designed for working with a variables, of sets of variables in objects.

    While C# can work with data in a database, or SQL could produce some level of a UI, I'm not sure that you would be served by doing that.

    SQL is a server side language, or specifically working with data in an RDBMS. It seems you want the IDE to do the work of producing SQL for you using client side code. You could do that with LINQ, and I'm torn on this being a good thing. It's good that developers become more productive, and LINQ is probably better than having you write cursors. However, that doesn't mean it's better overall.

    SQL is flawed, and while I don't agree with Steve Dassin, I think it works very well when someone learns about it and applies an honest effort to learn it.

    foxjazz, we're happy to debate with you and most of the people arguing would admit a point if you'd made one. However you've presented poor arguments in a way that remind of a child that's upset. You are ignorant of how to better do things and you are stamping your feed because things don't work the way you want. That's not a knock in intelligence. It's a statement of how you are communicating with us. As an IT professional, it reflects poorly on you.

    It's one thing to register a complaint about an IDE and how it handles languages, or rant about T-SQL's syntax. However your posting borders on whiny, disjointed rambling. It hasn't followed a line of thought that would make a point, or concede one. I'd give you that {} over BEGIN/END would save keystrokes, but fundamentally complaining you have to type those seems childish.

  • Unfortunately the computer science of sql barely exists.

    Ted Codd would be very surprised to learn that. Pity he isn't still alive.

    http://en.wikipedia.org/wiki/Edgar_F._Codd

    __________________________________________________

    Against stupidity the gods themselves contend in vain. -- Friedrich Schiller
    Stop, children, what's that sound? Everybody look what's going down. -- Stephen Stills

  • steve dassin (3/14/2009)


    ...

    Science is a b****, expediency is a w****. It's not easy to sleep with science. But sql sells itself to even the lowest bidder. It's been screwing developers forever:) But sql experts know of what they speak. There is a certain quality to expediency. The seduction by the w**** makes the b**** easy to forget...

    Nice mouth.

    ...I suggest you check out my blog. There you'll find the relational model wedded to the idea of an object oriented language. There's no mismatch here. A table is simply another type. A relational algebra is embedded in a imperative language that is OO. The product is Dataphor, the result is a science not expediency.

    Here's hoping you keep up the good fight and all that jazz:)

    I'm sure you'll make each other very happy.

    [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]

  • foxjazz (3/14/2009)


    And without someone speaking up about the issues, nothing will get done. You all that use t-sql and don't code probably never know any difference. I know my dba wife doesn't.

    [font="Verdana"]Sorry? I personally program in, er...

    C, C++, C#, Java, Visual Basic (yes, from version 1 all the way to .Net) and other BASIC flavours, various assembly languages, Lisp, Prolog, Pascal, Modula-2, Oberon, Forth (am I allowed to admit that?), FORTRAN, COBOL, various shell scripts, etc, etc, etc. Oh, and various flavours of SQL including PL/SQL (Oracle) and T-SQL (Microsoft SQL Server, Sybase).

    Personally, so far the only issues I have seen from what you have posted is that you don't know how to drive T-SQL, and you're rude.

    [/font]

    foxjazz (3/14/2009)


    I think one of the reasons they built SSIS, was so that we could do stuff a different way, and not worry about cursors.

    So why don't they just build datatables into t-sql, it would do away with the cusor paradigm all together.

    [font="Verdana"]A data table? You mean, like a table? You mean, like the things we work with all the time in SQL?

    [/font]

    foxjazz (3/14/2009)


    It's mainly because MS is built on separate camps, and they don't talk to each other in ways that could have made sql server easier to use and merging some of the languages.

    [font="Verdana"]

    Hmmm. T-SQL was originally designed by Sybase, and is an offshoot of SQL. There is a standardised form of SQL that is not driven by Microsoft.

    One of the things I have been really pleased with about Microsoft's programming language efforts of late is .Net. They've finally managed to approach the holy grail of true language interoperability (even if they had to steal the head designer from Borland to do it.) That's because they recognise the importance of domain specific languages.

    No one computer language is best for all tasks. SQL has some very real strengths that are pretty hard to do in C#. It sounds to me that the crux of your "issues" with SQL are basically that you are trying to duplicate C# in SQL, rather than learning the strengths of SQL.

    For example, none (i.e. not one) of the examples you have posted require cursors. In fact, you have to write twice as much code to use cursors with them. And yet you blame T-SQL for requiring cursors! It doesn't. It just seems that you haven't yet learned how to write SQL without them.

    So I will reiterate: you need to learn T-SQL better. That, it seems to me, is the crux of your issues.

    [/font]

Viewing 15 posts - 76 through 90 (of 465 total)

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