OKWAVEのAI「あい」が美容・健康の悩みに最適な回答をご提案!
-PR-
解決
済み

VBでExecuteが通らない

  • すぐに回答を!
  • 質問No.127275
  • 閲覧数723
  • ありがとう数3
  • 気になる数0
  • 回答数2
  • コメント数0

お礼率 20% (2/10)

朝倉@東京です。

VBで、以下の手順で ODBCデータベースを開きました。

Set wrkODBC = CreateWorkspace("NewODBCWorkspace", "admin", "", dbUseODBC)
Set curDB = wrkODBC.OpenDatabase("", _
dbDriverNoPrompt, _
False, _
"ODBC;" & _
"DATABASE=" & CST_DB_NAME & ";" & _
"UID=;" & _
"PWD=;" & _
"DSN=" & CST_DS_NAME)

その後レコードセットを取得する際に

sql_str = "select * from テーブルA"
Set pb_Rec_F5 = pb_curDB.OpenRecordset(sql_str, dbOpenDynaset)

を実行して、

Data_String=pb_Rec_F5("~フィールド名~")

でテーブルA内の各フィールドを呼び出して各処理を行いました。

ここからなのですが、データの削除を行う必要があって、

sql_str = "delete from テーブルA where Num = 0001"
curDB.Execute sql_str

を実行しようとすると
「ODBC--呼び出しは失敗しました。」(Error.Number 3146)
とエラー表示が出ます。
ODBCの設定なども見ましたがよくわかりませんでした。

構文に間違いがあるのでしょうか?それともODBCの設定?
初歩的な質問ですがご教授お願いします。
通報する
  • 回答数2
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

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

  • 回答No.1
レベル10

ベストアンサー率 31% (47/149)

Numフィールドのデータ型が文字型の場合、
"delete from テーブルA where Num = '0001'"
を実行してはどうなりますか?
お礼コメント
as-naoki

お礼率 20% (2/10)

ずばりいけました!
何の事はない、構文が間違ってたんですね・・・お恥ずかしい。
ODBCがどうとかってエラーが出るんで、SQL発行までいってないのかと思ってました。(^^;
どうもありがとうございました。
投稿日時 - 2001-09-03 10:09:29
-PR-
-PR-

その他の回答 (全1件)

  • 回答No.2
レベル10

ベストアンサー率 31% (44/140)

ODBC--呼び出しは失敗しました。(Error 3146) ODBC を使用中に、SQL データベースのデータに対して操作を実行しようとしました。 SQL データベースがネットワーク ドライブ上にあり、ネットワークとの接続が切断していると、このエラーが発生します。 ネットワークが接続しているかどうかを確認して再度操作を行ってください。
ODBC--呼び出しは失敗しました。(Error 3146)

ODBC を使用中に、SQL データベースのデータに対して操作を実行しようとしました。
SQL データベースがネットワーク ドライブ上にあり、ネットワークとの接続が切断していると、このエラーが発生します。
ネットワークが接続しているかどうかを確認して再度操作を行ってください。
このQ&Aで解決しましたか?
関連するQ&A
-PR-
-PR-
こんな書き方もあるよ!この情報は知ってる?あなたの知識を教えて!
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


いま みんなが気になるQ&A

関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ