SQL Server2000でcase文のサポートについて

このQ&Aのポイント
  • SQL Server2000のEnterprise ManagerでCASEを含むSQLを実行すると、「case SQL構成はサポートされていません」というエラーが出ることがあります。
  • 古いバージョンのSQL Server2000ではcase文がサポートされていない可能性があります。
  • case文が必要なSQL文で代替案を見つけることができず、困っています。
回答を見る
  • ベストアンサー

SQL Server2000でcase文がサポートされてない?

お世話になります。 客先より、SQL Server2000のEnterprise ManagerでCASEを含むSQLを実行したら 「case SQL構成はサポートされていません」とエラーが出たと連絡が入りました。 自分のマシンに入っている同ツールで実行すると、エラーは出ません。 客先と自分のマシンのSQL Server2000の違いは、バージョンなのですが、 古いバージョンだとcase文がサポートされていないということはあるのでしょうか? 自分のマシンは最新バージョンが入っています。 SQL文の内容的に、case文が必要なので、代替案も思いつかず、困っています。 よろしくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
noname#25230
noname#25230
回答No.1

客先の状況ですが、 ・サーバー(DBの本体)は古いSQL Server ・管理用端末には、SQL Server2000のEnterpriseManagerやツールが  インストールされている ということでしょうか?いや、「客先のSQL2000のEnterprise...」と書かれているので、そのまま読むとバージョンが同じように見えてしまいます。客先のDBサーバーで動いているSQL Server本体のバージョンが判れば、それを書かれた方が話は早いと思います。 で、軽く見てみたところ、マイクロソフトがSYBASE社からSQL Serverを買い取った頃のバージョン(Ver.4だそうです)では、CASE文はサポートされていなかったかもしれません。 http://msdn.microsoft.com/library/ja/default.asp?url=/library/ja/jpdnsqlsg/htm/SQL_WH/DevRSKit/sqldv58.asp によると、SQL Server6.0からANSIスタイルのCASE式に対応した、と書かれています。私が初めて使ったSQL Serverが6.5で、97年頃の話でしたから、それ以前。かなり前のバージョンですが、そんなに古いサーバーのお話でしょうか? そのあたりをまずしらべられて、疑問を払拭されるのがよいと思います(もしかしたら、バージョンを問い合わせたりとかが、いろんな事情で出来ない状況なのかな?とも推測しますが...そこは判らないのでお任せしますね)。 何かのヒントになれば幸いです。

hiromi_hiyuna
質問者

お礼

ありがとうございます。 ・サーバー・クライアント共にSQL Server2000が入っています。 ・提供しているシステムはDelphiで作成しているのですが、  BDE経由でCASE文を実行しているところが多数あるため、  CASE文自体が使えない、ということではなさそうです。 客先のSQL Server2000は、初期のものがはいっており、 自分のマシンには、SQL Server2000の最新バージョンが入っているので、 そこが理由かと思ったもので・・・。 客先に、SQL Server2000バージョンを確認してみます。 ありがとうございました。

関連するQ&A

  • SQL Server Compactはどこへ!?

    ビジュアルスタジオで前に作ったSQL Server Compactを組み込んであるアプリケーションをバージョンアップしようとしたら、2013ではサポートから外されていました。 なぜ外されてしまったのでしょうか? ビジュアルスタジオでサポートされている代替機能にはなにがありますか?

  • WEBサーバに超長文SQL文を送信するには

    WEBサーバにクライアントマシンから1K以上の長文SQLを送信し、WEBサーバからデータベースサーバにアクセスしてSQLを実行しデータを取得したいと思います。 WEBサーバが1Kを超える長文SQLを受信することができません。 何が悪いのかわかりません。 WEBサーバがSQL文を受け、そこからDBサーバにアクセスする構造は変えたくありません。何かよい方法があれば教えてください。 お願い致します。

  • エラー1069 SQL Server 2000

    当方,Win2000 Server + SQL Server 2000 の環境でIIS 5.0を使っているのですが突如 エラー1069と表示されEnterprise Manager で確認すとサーバーが見えない現象が発生しています。 発生のタイミングは起動時、稼動時を問わず不明 Microsoftのサイトでも色々と調べましたがよく判りません。 どなたか助けて頂け頂けないでしょうか。 宜しくお願い致します。

  • SQL Serverにアクセスできない

    お世話になります。 ただいまSQL Server 2000を使用し、アプリケーションを動作しようとしたのですが、 環境:Windows Server 2000 SQL Server 2000 クライアント: Windows XP ×2 2台ともにEnterprise Managerをいれ、SQL にアクセスしようとしたのですが、一台だけアクセスが出来ません。2台ともにファイアウォールは切ってあります。 どうすればいいのか困ってしまって・・・宜しくお願いします。

  • SQL Serverのクラスタ設定について質問

    質問失礼致します。 SQL Serverでクラスタ構成を構築しようと思い、AlwaysOnを設定していたのですが、 SQLサーバ構成マネージャで「AlwaysOn 高可用性」を有効にしようとしたところ、以下メッセージが 表示され有効化することが出来ません。 ■メッセージ AlwaysOn 可用性グループ機能を使用するには、WSFC 修正プログラム KB 2494036 が インストールされた Windows Server 2008 以降のバージョンで実行されている、x86(非 Wow) または x64 Enterprise Edition のSQL Server 2012(またはそれ以降のバージョン)が必要です。 このSQL Server エディションとWindows Server システムのいずれかまたは両方が、これらの 1つ以上の要件を満たしていません。 なお、構築したのは仮想マシンで、以下OSとDBにて構築しました。 サーバはWSFCでノードを追加済みです。 MSのサイトでAlwaysOnの前提条件も確認したのですが、条件は満たしていると思うのですが・・・。 ただ、OSもDBも評価版を使用していますが、評価版ではAlwaysOnは構築出来ないのでしょうか? ご存知の方がいらっしゃったらご教示願います。 ■環境 OS:Windows Server 2012 R2 Standard 評価版 DB:Microsoft SQL Server 2014 - 12.0.4100.1 (Intel X86)   Enterprise Evaluation Edition on Windows NT 6.3 (Build 9600: ) (WOW64) (Hypervisor) 宜しくお願い致します。

  • SQL文長の制限

    PostgreSQL8.1.3にて、長いwhere句のあるSELECT文を実行したところ、 「server closed the connection unexpectedly」 のエラーとなってしまいました。 エラーとなったSQL文は317726文字で、 where句のin条件のリスト個数が非常に多くなっています。 試しに、in条件のリスト部分を減らし、 156000文字までSQL文を短く短くしたら、エラーは回避できました。 in条件ではなくor条件に変更すると、エラーとの境目のSQL文長は上記とは異なることから、 SQL文長だけが影響しているとは思えません。 SQL文を改修して、エラーを回避するにしても、ここらへんの限界値がわからないと改修できませんので、 改修の目安(信頼できるSQL文長がどのくらいなのかなど)をご教授お願いします。

  • SQL SERVER2008の質問です

    SQL2008 EXPRESSで作成したバックアップをSQL2008 R2 EXPRESSにデータベースの復元で問題なかったのですが、SQL2008 R2で修正があったので修正したあと、2008R2でバックアップを取ってSQL2008に復元しようとしたらエラーになります。 データベースはバージョン10.50.1600を実行中のサーバーにバックアップされました。このバージョン(バージョン10.00.1600を実行)とは互換性がありません。 と言うメッセージが出ます。 両方をSQL2008R2にすれば問題ないのでしょうが、SQL 2008R2のバックアップをSQL2008に復元する方法をご存知の方は教えてください。 宜しくお願い致します。

  • SQL Serverの移行について

    SQL Server2000からSQL Server2008へ 移行したいです。 Accessからリンクテーブルをして使用しています。 移行後、Accessのプログラムを実行しようとすると、 エラーが発生します。ODBC接続を使用しています。 リンクテーブルマネージャで再リンクしてみたのですが、 うまくいきませんでした。 何かうまくいくためのヒント等わかるかたいらっしゃいますでしょうか?

  • Microsoft SQL Serverの変更

    CmdExecの権限をSysadminに制限するために Microsoft SQL Serverの中を変更したいのですが Microsoftの説明書で [スタート]-[すべてのプログラム]-[Microsoft SQL Server]-[Enterprise Manager]を開くとあるのですが すべてのプログラムの中に Microsoft SQL Serverがありません。 どうしたらよいのでしょうか?

  • SQL Server2000 ?

    あるマシン(Windows XP Pro)には SQL Server が入っています。 ただ何年も放置していたマシンなので 2000 なのか 2005 なのかわかりません。 プログラムの追加と削除で調べると添付のように 2000 と 2005 の両方が表示されてしまいます。 (添付画像がプログラムの追加と削除で表示されている内容です) 実際このマシンにインストールされているバージョンはどちらなのでしょうか? また SQL Server 2000 のバックアップデータはそのまま復元可能なのでしょうか? VB6 からアクセスするように組まれていますので、そのまま使いたいと思っています。