- ベストアンサー
SQL Server 6.5と2005を比べてみて
現在、SQL Server 6.5でデータベース管理、 VB6.0でシステム開発をしております。 SQL Serverを2005にした場合、 SQL文等の違い、注意すべき点はありますか? 以前6.5を使用していて現在2005での管理をしておられる方、 その他お詳しい方、是非ご教授下さい。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
ご回答が遅くなってすいません。 >MDACの最新バージョンは2.8 そうですね。最新は、2.8なので、念のため各クライアントに 割り当てておくといいかもしれません。 (Webアプリであれば、WebサーバとDBサーバだけ、MDACの 最新を割り当てておくだけでいいんですけど、Windowsアプリだと 各クライアントに割り当てる必要ありですね) >予約語の違いについて 当時の担当者に問い合わせたところ、SQLを変更したのではなく、 sp_dbcmptlevel というストアドを使って、 「データベースの互換性レベル設定」っていうのをやって、 それで吸収したそうです。 なので、予約語の違いによるSQLやストアドの修正は してなかったそうです。 sp_dbcmptlevelストアド(旧バージョン互換性設定)については 下記をご参考にしながら、設定すればOKです。 http://msdn2.microsoft.com/ja-jp/library/ms178653.aspx よろしくお願いします。
その他の回答 (3)
- kero_mio
- ベストアンサー率90% (94/104)
すいません、追加情報です。 SQLやストアドは、予約語だったものが予約語じゃなくなったり、予約語じゃなかったものが予約語だったりしたケースは、いくつかありました。 なので、一部ではストアド、SQLの修正は必要になるかもしれません。 ご参考になれば幸いです。
お礼
追加のご教授、情報を有難う御座います。 無知で申し訳ないのですが、予約語とはどのような事を指しているのでしょうか? 追記頂けると有難いです。
- kero_mio
- ベストアンサー率90% (94/104)
>クライアントからODBC経由でSQLへアクセスしていますが、 その辺りにも変更や注意すべき点はありませんでしょうか? 意識しなくても済み、とくにODBC接続文字列の違いはないのですが、 しいて上げるならば、使用するMDACのバージョンには、念のためご留意下さい。 #どちらかというとDBサーバに接続するクライアントが 気をつけてくださいってことですね。 よろしくお願いします。
お礼
追加のご教授有難う御座います。 MDACのバージョンが古いということが原因で、 不具合が出ていたケースをどこかのサイトで見たことがあります。 MDACの最新バージョンは2.8のようですが、 最新にバージョンアップしておけば大丈夫でしょうか? 現在2.0なのですが、いきなり最新版へアップグレード、 又はインストールして良いものなのでしょうか?
補足
MDACのバージョンをレジストリより確認したところ、 2.0となっていたのですが、MDAC2.1より前のバージョンだと、 レジストリに格納されているバージョン情報が、 正しく表示されない事が分かり、マイクロソフトにて紹介している、 ComponentCheckerを使用して再度チェックしてみましたら、 MDAC 2.8 SP1 ON WINDOWS XP SP2とありましたので、 どうやらWindowsUpdateでアップグレードされていたようです。 これから社内全てを確認してみます。
- kero_mio
- ベストアンサー率90% (94/104)
SQL文法やストアドの作り方に大きな違いはないのですが、 アップグレードに関しては、いきなり2005にアップグレードすると 2005は6.5のアップグレードをサポートしておりませんので、 順を追ってアップグレードするということを遵守して下さい。 手順としては、 6.5 -> 7.0 -> 2005の順番でバージョンアップしてください。 (間接アップグレードといいます) また、6.5 -> 2000 -> 2005 だとサポートしてませんので、 必ず、6.5 -> 7.0 -> 2005の手順でアップグレードすることが ポイントです。 ■6.5から7.0へのアップグレードの確認事項 http://www.v6.orangesoft.co.jp/RDB/rdb_memo_mssql.html ■6.5から7.0へのアップグレードに関するよくある質問 http://support.microsoft.com/kb/195444/JA/ ■7.0から2005へのアップグレード http://msdn2.microsoft.com/ja-jp/library/ms144245.aspx また6.5 vs 2005の大きな違いといえば、サポートしている、 システム用のストアドが2005で大幅に追加されたという点や、 システム用ストアドのスキーマが"sys"というストアドになった とか、画面構成が大きく違うとかいろいろありますが、 特にSQLやストアドの違いはなかったです。 (既に作ったSQLやストアドは、だいたいがそのまま使えると思います) 管理面で言えば、少し楽になるようなツールが多数導入されているという点で大きく違うかもしれません。 (ただし、sp_系ストアドが6.5の時と比べ、引数が変更された等は ありました) どちらかというとアップグレードに関する手順の方が いろいろと注意しながらやるべきことが多く、 アップグレードした後の問題というのは少ないはずです。 それから、6.5から2005に関する資料は、確かにマイクロソフトも 公開していないみたいなので、 比較的、2005と同じ仕組みである「2000」と「6.5」を比較しても 良いかと思います。 6.5と2000の違い http://msdn.microsoft.com/library/ja/default.asp?url=/library/ja/instsql/in_backcomp_5dx1.asp ご参考になれば幸いです。
お礼
ご教授有難う御座います。 今回サーバーを新設という事で、6.5からのアップグレードではないので、 テーブルやストアド等、新規で作成していくつもりでおります。 只、6.5をベースに開発したシステムが動かなくなるというのが、 一番懸念されるところですが、SQL文法やストアドに大きな違いは無いという事なので、 まずは一安心です。 どんなサイトを見ても、2005は6.5より遥かに使いやすくなったと書かれているので、 使用感としては期待しているところです。 クライアントからODBC経由でSQLへアクセスしていますが、 その辺りにも変更や注意すべき点はありませんでしょうか? 宜しければ、追加でご教授頂けると有難いです。
お礼
追加のご教授大変助かります。 予約語について、少々難解ですが、 参考ページをじっくり読んで設定したいと思います。 有難う御座いました。