Slashdot Mirror


SQL Validator

clever writes: "Since open standards are good for pretty much everyone except closed source, multi billion, software companies that try to lock their customers into their proprietary technology I thought that the Slashdot readers might welcome a chance to help shape the next SQL-standard. The Mimer SQL Validator lets you validate any given SQL-statement against SQL-92, SQL-99 and, get this, SQL-200x (Draft spec, 2002-01-11). It stores your statement, if you'll allow it, and it will be used by the ISO SQL-200x standards committee to make statistics on commonly used features and errors to be used in the standards work. So, don't ask what SQL can do for you. Ask what you can do for SQL. In the process you will find out the proprietary features that you are already using."

4 of 22 comments (clear)

  1. Reminds me of HTML/CSS validators and standards by krs-one · · Score: 3, Insightful

    This reminds me of the HTML/CSS validators that the W3 (w3.org) set forth since HTML and CSS were concieved. However, since they set for the standards, it seems everyone should follow them. Obviously, this is not true. IE support for CSS2 is almost non-existant, with Mozilla coming in with the most support.

    I think that this will become the same way. There will be many databases out there that support some of the standards, but not all of them. Some databases will be far ahead of others in standards support.

    I am what you would call a standard zealot for just about any standard. Standards help any programmer (or any person for that matter) when doing anything. Standards (or at least what they _should_ do) set out a group of rules that everyone should follow in order to make portability extremely easy (again, this is from a programmers POV). However, you have different companies who want to create their own standards (and then not even follow them, MS comes to mind :)) and some companies who honestly try to support all of the standards they can (Mozilla).

    I hope that DB's start to support the most current standard and fast. That way, writing abstracted DB code in any language will become *extremely* easy.

    -Vic

    1. Re:Reminds me of HTML/CSS validators and standards by Chacham · · Score: 3, Insightful

      HTML and SQL are very different, and I do not think they can be compared when it comes to standards.

      HTML has very few common clients. So, only the smaller clients care about the standards, the big fish, just write their own, and HTML authors are forced to follow.

      SQL is different. There are quite a few databases out there. It even got to the point where they created ODBC. No one or two databases dominate the market.

      Thus, the push is for an HTML standard is wanted more by people than companies. The push for a(n) SQL standard is more by companies than people. When people want a standard, it's free. Not so with companies.

      HTML is a presentation language, and usally comes *after* the need is already there. So, people always want to get the standards up to date, and are easier to write, since it was already implemented.

      SQL 88 seems to be the most common. How many even care to go further than that, because the basics are already there? While later standards are nice, they are not nearly in need of updates as much as HTML is.

      Thus, HTML standards are public before they're even written. SQL is written from the standards. This also means, that companies want to pay for the SQL standard, whereas companies would rather get eveyone to support their HTML, forcing them to distribute it for free.

  2. Products' SQL support is pathetic by The+Pim · · Score: 3, Insightful
    The common SQL DMBS implementations have truly abysmal standards support. They're really not even close. Oracle doesn't support the standard outer join syntax (and doesn't support full outer joins at all). It gets confused between the empty string and NULL. MS SQL Server doesn't support the standard concatenation operator (using '+' instead of '||'). PostgreSQL honors non-standard escape characters in string literals. And those are basic language elements--forget about anything interesting like domains and system tables. Basically, if you pick a random feature from the standard, you're likely to find missing or broken support in many or most implementations. (In my experience, Oracle is the worst, and PostgreSQL is the best.)

    I'm not going to get into why support is so bad (my glib answer: databases suck). But I don't know of any other major standard that is so routinely disregarded. It's been a fond hope of mine that PostgreSQL would commit to standards support and (slowly) pull the rest of the industry along. But I see no indication of that.

    I program SQL with two books at my side: "SQL Instant Reference" (Gruber) and "A Guide to the SQL Standard" (Date and Darwen). To me, they are lone voices of sanity! (It's hard to find a book that covers SQL the standard, not some implementation.) When I can't write a portable SQL statement because of product infidelities, I add a workaround with a big comment full bile and invectives. It's good for the soul. :-)

    I hope this project helps build some momentum for SQL standards support. I'm not doing an SQL projects right now, but when I do, I'll definitely support this effort.

    --

    The evaluation of an action as 'practical' . . . depends on what it is that one wishes to practice.
  3. Re:SQL validator by axlrosen · · Score: 2, Insightful

    I think you shouldn't be allowed to criticize someone for charging money for something, without explaining how they *should* get their money. There are alternative ways to fund a standards organization, but each has their disadvantages too...