none
VS2010 Transact-SQL エディタで、SQL Server 2005 向けの互換性を確保する方法はありませんでしょうか? RRS feed

  • 質問

  • こんにちは。

    現在、Webアプリケーションの開発を VS2010 sp1 + SQL Server 2008 R2 で ASP.net 2.0 に抑えて開発を行なっております。

    (最新の SQL Server Data Tools を導入しております)

    本番のSQL Server は 2005 になります。

    そこで VS2010 のTransact-SQL エディタを使ってクエリを書いたのですが、互換性チェックが 2005 で行なわれず、

    実環境(2005)でエラーとなりました。

    この問題を回避するベストな方法は、記述時点で警告もしくはエラーとなることだと思いますが、

    実現方法がわかりません。

    試してみたことは、SQL Server Management studio 2008 から接続し、

    データベースのプロパティ-オプションにある「互換性レベル」を「SQL Server 2005 (90) 」であることを確認しております。

    回避策をご存知でしたらご教授願います。



    • 編集済み tkm1000 2013年5月1日 11:48
    2013年4月30日 11:19

回答

  • うまい方法が思いつきませんが。

    簡単にできる方法としては、SQL Server 2005(データ量によってはExpress Editonでも)を別インスタンスでインストールして、そちらで開発/検証を行ってみるのはどうでしょうか?
    (根本的な解決ではないとは思いますが)

    他の方法としては、SQL Server 2008移行で追加された機能を抽出する処理を記述する事も考えられますが、割に合わない気がします。

    • 回答としてマーク tkm1000 2013年5月6日 1:15
    2013年5月2日 1:11

すべての返信

  • うまい方法が思いつきませんが。

    簡単にできる方法としては、SQL Server 2005(データ量によってはExpress Editonでも)を別インスタンスでインストールして、そちらで開発/検証を行ってみるのはどうでしょうか?
    (根本的な解決ではないとは思いますが)

    他の方法としては、SQL Server 2008移行で追加された機能を抽出する処理を記述する事も考えられますが、割に合わない気がします。

    • 回答としてマーク tkm1000 2013年5月6日 1:15
    2013年5月2日 1:11
  • 投稿いただきありがとうございます。

    また、返信遅れましたことお詫び申し上げます。失礼致しました。

    やはり根本的には難しいということでしょうか。。

    SQL Server 2005 をインストールしそちらに接続し開発を行う。ということですね。

    気持ちの上で辛いですが、仕方がない事かもしれません。

    優先順位としては気持ち悪さより、互換性が大切ですので、ご提案頂いた方法で対応したいと思います。

    このスレッドはもう少し開放しておきます。

    CatTailさま ありがとうございました。

    2013年5月4日 12:01
  • CatTailさま

    ご提案いただきました方法で無事解決致しました。

    実際にやってみて、現状ベストな方法であることがわかりましたのでレポートを添えておきます。

    <対応>

    SQL Server 2005 をインストールし、インスタンスを作成し開発を行う。

    <手順>

    1. SQL Server 2005 Express Edition sp4 をダウンロードしインストール

    *インストール時にインスタンス名をわかりやすいものに変更

    2.インストールしたSQLServer 2005 にデータベースを復元し開発時に使用

    <危惧していたこと>

    1.異なるバージョンを同居させたくない。 → 問題なく作動しています。

    <今回わかったこと>

    1.バックアップを作成した場合に、直接復元ができるようになった。

    2.インスタンス単位で停止ができるので切りわけがしやすくなった。

    3.バージョンダウンして復元するのは骨である。

    *2008から完全な状態(ダイアグラムや関数を含む状態)での復元はできず

     恐ろしく手作業が発生します。

    実際にやってみて元々このように対応するべくデザインされていることがわかりました。

    CatTailさまにご提案頂いた方法こそ現時点でのベストであると実感しましたので

    このスレッドを完了とし終了します。

    2013年5月6日 1:16