DB2のクライアントを7.1から8.1に変更した時に出るエラーについて

このQ&Aのポイント
  • DB2のクライアントを7.1から8.1に変更した際に、SQL0100Wエラーが発生する問題について対処方法を教えてください。
  • DB2のバージョンを7.1から8.1にアップデートした際、VB6.0で開発されたプログラムでSQL0100Wエラーが発生する場合、どのように対応すればよいのでしょうか?
  • DB2のクライアントを8.1にアップデートした際、VB6.0で開発されたプログラムでSQL0100Wエラーが表示される問題について、解決方法を教えてください。
回答を見る
  • ベストアンサー

DB2のクライアントを7.1から8.1に変更した時に出るエラーについて

初歩的な質問なのかもしれませんが DB2を扱うのが初めてなのでお願いします。 私なりに調べて見ましたが原因がわからず困っています VB6.0で開発してあるプログラムで7.1では正常に動作していましたが8.1にバージョンアップさせたところ 「 SQL0100W FETCH、UPDATE または DELETE の対象となる行がないか、または照会の結果が空の表です。 SQLSTATE=02000 」 というエラーメッセージが出てしまいます。 7.1ではこのエラーはOnErrorGoToに飛ばないみたいなのですが8.1で飛んでしまいます。 これはどのように対処すればよろしいのでしょう?

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

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

はじめまして、8.1は詳しくわからないのですが、 7.Xでは、SQL0100W FETCH、UPDATE または DELETE の対象となる行がないか、または照会の結果が空の表です。 のエラーをエラーとして扱うか、そうしないかの 設定があったかと思います。CLI/ODBCのパラメタ設定で、 サービスというタブの中にある、空の検索済み/更新用のVisualBasic設定というオプションが設定されているか されていないかの話はあったのですが、きっとDB2V8も そのような設定があるものだと思います。

参考URL:
http://www-6.ibm.com/jp/software/data/db2univ/lab/ise/techlib/pdf/db2v8_func04.pdf
marumaru_a_w
質問者

お礼

ありがとうございます。 大変参考になりました。 ODBCのほうにも設定があったのですね もう少し調べてみます。 ADOでプロパイダを変えたところエラーが出なくなったのもあるので ODBCの設定が悪かったんだと思います 本当にありがとうございました

関連するQ&A

  • DB2でselectは出来るが、updateなどが出来ない

    ご覧頂き、有難うございます。 strutsを使って、Webアプリを作成しています。 DBはDB2を使ってまして、タイトルの通り 画面を使って、検索は出来るのですが 更新系(update,delete,insert)が出来なくなってしまいました。 エラーは SQL1822N 予期しないエラー・コード "-290" をデータ・ソース "LINK_CRP_JDE" から受け取りました。 関連したテキストとトークンは "func="SQLExecute" msg=" SQL0290N 表スペース・" です。SQLSTATE=560BD と出ています。 何かご存知ある方、回答御願いします。

  • DB2のエラーの回避方法を知っている方教えていただけますか?

    「 SQL30040N 後続のコマンドまたは SQL ステートメントの正常な実行に影響を与えない使用不能リソースのために、実行が失敗しました。理由 "0x200002D"、リソース・タイプ "MEMORY"、リソース名 "DRDA HEAP"、製品 ID "SQL07029 "。 SQLSTATE=57012 」 このようなエラーメッセージが出て困っています。 回避方法を知っている方教えてもらえないでしょうか? 環境は サーバー OS :Windows Nt4.0 SP6 DB2:Ver7 Fix13 クライアント(1) OS :Windows2000 SP4 DB2:Ver8 Fix7 クライアント(2) OS :Windows2000 SP4 DB2:Ver8 Fix4 開発言語:VB6.0 Sp5 接続方法:ADO Microsoft Data EnvironmentでCommandを使用 クライアントのFixを当てる前までは、このメッセージが出ていなかったのですが、ほかのエラー回避のためにFixを当てたところ今度このエラーが出るようになってしまいました。 IBM等で調べたのですが具体的な解決策がなく投稿しました。よろしくお願いします。

  • DELETE文のWHERE条件にSUBSTRを使いたい <DB2+Java1.4>

    DB2+eclipse2.1で開発しています。 テーブルのデータ削除に条件を付け加えたいのですが、 strSql = "DELETE FROM スキーマ名.テーブル名 WHERE substr(ABC,1,6) < " + "200404"; というように、SQL文を書くと、 ------------------------------------ [IBM][CLI Driver][DB2/NT] SQL0440N 互換引き数を持つタイプ "FUNCTION" の名前 "SUBSTR" の許可ルーチンが見つかりませんでした。 SQLSTATE=42884 ------------------------------------ 上記エラーが出ます。 DB2でSUBSTRって使えると思うのですが。 ご存知の方いましたら、教えてください。 よろしくお願いします。

  • db2 create functionでエラー

    aix version5 + db2 version9.5.5 の環境でUDFを作成しようとDDLを実行したところ、 以下のエラーがでて作成できませんでした。 db2 9.7 では同じDDLで作成できました。 どうやらcursorの定義に問題がありそうなのですが、 9.5では以下のcursor定義はできないものなのでしょうか? よろしくお願いします。 --エラー内容-------------------------- DB21034E コマンドが、有効なコマンド行プロセッサー・コマンドでないため、 SQL ステートメントとして処理されました。 SQL 処理中に、そのコマンドが返されました。 SQL0104N "GentaniMeisai CURSOR" に続いて予期しないトークン "FOR" が見つかりました。予期されたトークンに "<SQL_variable_condition_declaration>" が含まれている可能性があります。 LINE NUMBER=15. SQLSTATE=42601 --DDLの中身(一部)------------- DECLARE curGentaniMeisai CURSOR FOR SELECT aaa FROM bbb WHERE ccc = [変数] ;

  • db2のデータベース作成エラーについて

    はじめまして。 以前、以下のような質問がされていると思います。 「WebSphereでDB2をデータベースとして行っているのですけど、今日起動してDB2にconnectしようと思ったら COM.ibm.db2.jdbc.DB2Exception: [IBM][CLI Driver] SQL1032N start database manager コマンドが発行されていません。 SQLSTATE=57019 というエラーメッセージが出てきてconnectできなくなってしまいました。どなたか改善方法知っている方いらっしゃいましたら教えてください。よろしくお願いします。」 その原因が「原因はユーザーのpassを変更した際、DB2のユーザーを変えなかったのが原因でした。」ということなのですが、現在同じエラーが出て困っています。どのような対処をすればよいか教えていただけないでしょうか。よろしくお願いいます。

  • DB2の接続エラー

    はじめまして。 現在、Tivoli(MAXIMO)で使用しているDB2を自分のクライアント端末からDB2に接続し、VBで帳票を作ろうとしています。 しかし、DB2へ接続しようとすると、エラーとなります。 エラー内容は。 実行時エラー'2147217887(80040e21) CLI0124E 引き数の値が無効です。SQLSTATE=HY009となります。 DB2のランタイムクライアントをインストールしているので、ODBCには問題がないと思います。 接続のところで、エラーとなるようです。 コーディングは以下のようにしております。 strSQL = "select * From TICKET" ' 接続 cn.Open "Provider=IBMDADB2;DSN=MAXIMO.TICKET;UserID=user名;Password=password;" Set rs = cn.Execute(strSQL) DB2のバージョンは9 以上、よろしくお願いいたします。

  • DB2で SQL1032N start database managerエラー

    はじめまして。初めて書き込みさせていただきます。 WebSphereでDB2をデータベースとして行っているのですけど、今日起動してDB2にconnectしようと思ったら COM.ibm.db2.jdbc.DB2Exception: [IBM][CLI Driver] SQL1032N start database manager コマンドが発行されていません。 SQLSTATE=57019 というエラーメッセージが出てきてconnectできなくなってしまいました。どなたか改善方法知っている方いらっしゃいましたら教えてください。よろしくお願いします。

  • DB2のSQL

    select * from xTABLE where EMP_ID = "P001" というSQLを実行すると SQL0206N "P001" is not valid in the context where it is used. SQLSTATE=42703 のエラーが出ます。 SQLSTATEで調べても「"P001"の列がテーブルにない」ということみたいですが 列名で捉えている時点でおかしい気がします select * from xTABLE where EMP_ID = null のSQLは正常にテーブルのSELECT結果が返ってきます。 どうすればよいでしょうか?

  • DataGridViewの内容をDBに反映する時

    VB2005で開発をしています、DataGridViewの事について質問させていただきます。 DataGridViewに入力されたデータを、登録ボタン押下によってDBに反映したいのですが、 この際どのようにDBへ登録すれば効率がいいでしょうか? 今は、DataGridViewの1行目を読み込んでDBに登録、 2行目を登録・・・・最終行を登録という感じで、1行ずつ登録を行おうかと考えています。 よろしければご教授お願いいたします。

  • oracle,sql-server,DB2,フリーDB

    oracle 10g sql-server 2005 DB2 フリーDB(mysqlなど) はどれがいいでしょうか? 一応3年ぐらい前までは開発現場にいたので一通り知っています。 すべて経験ありますが管理はしたことはありません。 価格ならフリーが一番でしょう。信頼性で言うとoracle でもコストが高い。 MSとくっつくならsql-serverだと思うのですが。 まだ社内でどの程度の規模になるかも把握し切れていませんが、 やはり無難にoraが一番でしょうか?? 後々に業務システムの開発をします。 javaにするかVB,delphiなどにするかも決まってません。 DB2なら一応資格も持っているんですけどね。 管理、構築の容易さなどそれぞれの特徴も教えてください。