データベース互換性レベルが 90 以上に設定されている場合 AUTO モードで実行される FOR XML クエリは派生テーブル別名に対する参照を返します 互換性レベルが 80 に設定されると FOR XML AUTO クエリは派生テーブルを定義するベース ...

データベース互換性レベルが 90 以上に設定されている場合、AUTO モードで実行される FOR XML クエリは派生テーブル別名に対する参照を返します。互換性レベルが 80 に設定されると、FOR XML AUTO クエリは派生テーブルを定義するベース テーブルに対する参照を返します。たとえば、派生テーブルが含まれる次のクエリでは、互換性レベル 80 と 90 以上ではそれぞれ異なる結果が生成されます。

SELECT * FROM 
   (SELECT a.id AS a, b.id AS b 
    FROM Test a JOIN Test b ON a.id=b.id) AS DerivedTest FOR XML AUTO;

互換性レベルが 80 の場合、このクエリは次の結果を返します。この結果は、派生テーブル別名ではなく、派生テーブルのベース テーブル別名 a と b を参照します。

        

互換性レベル 90 以上の場合、このクエリは、派生テーブルのベース テーブルではなく、派生テーブル別名 DerivedTest の参照を返します。

        
データベース互換モードを 90 以上に変更する場合 その前に ORDER BY 句内の定数式を使用しているステートメントを 列名 列の別名 または選択リスト内の名前か別名の位置を表す負以外の整数を使用するように変更してください データベース互換レベルが 90 以上の場合 'unqualified join' 構文があるとまれに 結合述語がない という警告が表示され クエリが長時間実行されることがあります データベース互換性レベルが 1103 を超える場合 メジャー グループで許可されるのは DegenerateMeasureGroupDimension のみです テーブル: '%{tableName/}' のメジャー グループのエントリを確認してください ... データベース互換性レベルが 1103 を超える場合 リレーションシップの ActiveState プロパティはアクティブまたは非アクティブに設定する必要があります テーブル: '%{tableName/}' で ID: '%{relId/}' ... データベース互換性レベルが 90 以上に設定されている場合 AUTO モードで実行される FOR XML クエリは派生テーブル別名に対する参照を返します 互換性レベルが 80 に設定されると FOR XML AUTO クエリは派生テーブルを定義するベース ... データベース互換性レベルの変更により データベース %1!s! の 1 つ以上のオブジェクトのデータが未チェックに設定されました これらすべてのオブジェクトを確認するには sys.tables と sys.views の列 has_unchecked_assembly_data ... データベース内に '%1!s!' という名前または %2!s!='%3!s!' %4!s!='%5!s!' および %6!s!='%7!s!' のプロパティで メッセージ交換の優先度が既に存在します 一意の名前または一意のプロパティ セットを使用してください ... データベース内のいくつかの外部キーが このテーブルの 2 つ以上の列を参照しています そのため Strech Database に含めることができません データベース内の列に指定された暗号化の種類 %2!s! は 無効であるか破損しています アルゴリズム %1!s! の有効な暗号化の種類: %3!s!