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?
Answer :
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
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.
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
andTIME
literalsDOMAINS
<set column default clause>
not there, but instead this thing<position expression>