web-dev-qa-db-ja.com

Microsoft SQL Server 2016はANSI SQL-92に完全に準拠していますか?

MS SQL 2016の準拠確認を検索しようとしています-ANSI SQL-92規格に完全に準拠している場合。

私は Microsoft Docs でこの記事を見つけましたが、そうではありませんが、ODBCドライバとMicrosoft Jetエンジンを指します-これがまったく同じかどうかはわかりませんが、 T-SQLにも関係するべきではありませんか?

6
Sebastian Widz

地球上のデータベースプラットフォームのどのバージョンも、標準のどのバージョンにも完全に準拠しているとは思いません。これが、100%コンプライアンスの主張を見つけられない理由です...

スタックオーバーフローに関する有望な出発点は、次のQ&Aにあります。データベースエンジンとANSI SQLコンプライアンス

そこからリンクされている多くの参照は維持されていません。データベースプラットフォームは常に進化しており、これはそのすべての上にとどまる多くのフルタイムの仕事になるからです。基本的に:

  • 100%準拠のデータベースプラットフォームはありませんが、いくつかのプラットフォームは近づいています
  • プラットフォームには、標準に加えて独自の追加があるため、「完全準拠」の定義は他の誰かの定義とは異なる場合があります
12

いいえ(例付き)

最初のページのように、

<concatenation operator>は演算子、||は、指定された順序で文字列オペランドを結合することによって作成された文字列を返します。

SQL Serverは+

そして、私が知る限り、それはSQL 86です。

こちらもご覧ください

  • 区間タイプとSQLサーバー
  • CURRENT_DATECURRENT_TIMECURRENT_TIMESTAMPCURRENT_USER
  • 16進およびビット文字列リテラル
  • TABLE
  • CORRESPONDING BY
  • TIMESTAMP WITH TIME ZONETIMESTAMP WITH OUT TIME ZONE
  • DATEおよびTIMEリテラル
  • DOMAINS
  • <set column default clause>ありませんが、代わりに これ
  • <position expression>
1
Evan Carroll