Question

I am trying to find a compliance confirmation for MS SQL 2016 - if it is fully compliant with ANSI SQL-92 starndard.

I found this article on Microsoft Docs which states it is not, but it refers to ODBC driver and Microsoft Jet engine - not sure if this is exactly the same thing, shouldn't it also relate to T-SQL?

Was it helpful?

Solution

I don't believe that any version of any database platform on earth is fully compliant with any version of the standard. This is probably why you're not finding any claims of 100% compliance...

You can find some promising starting points over on Stack Overflow in the following Q & A: Database Engines and ANSI SQL Compliance

Many references linked from there are not maintained because database platforms are evolving all the time and this would be many full-time jobs to stay on top of it all. Basically:

  • no database platform is 100% compliant, but several come close
  • platforms have proprietary additions on top of the standard, so your definition of "fully compliant" may vary from someone else's

OTHER TIPS

No (with examples)

From like the very first page,

<concatenation operator> is an operator, ||, that returns the character string made by joining its character string operands in the order given.

SQL Server uses +.

And as far as I know that's SQL 86.

See also

  • INTERVAL types and SQL Server
  • CURRENT_DATE CURRENT_TIME CURRENT_TIMESTAMP CURRENT_USER
  • hex and bit string literals
  • TABLE
  • CORRESPONDING BY
  • TIMESTAMP WITH TIME ZONE, TIMESTAMP WITH OUT TIME ZONE
  • DATE and TIME literals
  • DOMAINS
  • <set column default clause> not there, but instead this thing
  • <position expression>
Licensed under: CC-BY-SA with attribution
Not affiliated with dba.stackexchange
scroll top