none
2008のみで起きるエラー RRS feed

  • 質問

  • CREATE TABLE #SS
    (
     IDX INT
    )
    GO

     

    INSERT INTO #SS SELECT 1
    INSERT INTO #SS SELECT 2
    INSERT INTO #SS SELECT 3
    GO

     

    SELECT IDX,IDX FROM #SS ORDER BY IDX

     

    SQLSERVER2008のみIDXがあいまい、というエラーになります。

    前のバージョンから移行させるときには注意。

     

    2009年1月16日 3:35

回答

すべての返信

  • SQL Server 2005でも起きました。

     

    > メッセージ 209、レベル 16、状態 1、行 4
    > 列名 'IDX' があいまいです。
    2009年1月20日 2:16
  • こんにちは、naginoです。

     

    厳密には、データベースの互換性レベルが 90 (SQL Server 2005 相当)以上での仕様変更による想定どおりの動作ですね。

    以下のリンク先の、「互換性レベル 80 とレベル 90 の相違点」の3番目、並びに末尾にある「例」の B に記載があります。

    http://msdn.microsoft.com/ja-jp/library/bb510680.aspx

     

    ご参考になれば幸いです。

    2009年1月22日 0:40
  •  こんにちは、フォーラムオペレータ大久保です。

    hotcake さん、皆さん、フォーラムのご利用ありがとうございます。
    SQL Server 2005の情報をお寄せくださった Z9M9Z さんと、資料を提示してくださった nagino さんの投稿を「回答としてマーク」させていただきました。

    また何かありましたら、是非当フォーラムをご利用ください!
    それでは。
    マイクロソフト株式会社 フォーラム オペレータ 大久保 直美
    2009年3月11日 9:30