
VS2003.NETで開発中の初心者です。
以下のコード(Form1.vb)を実行すると次のエラーがポップアップされ“oADP.Fill(oDS, "ROOT")”のラインで止まります。
<エラー>
'System.Data.OleDb.OleDbException' のハンドルされていない例外が system.data.dll で発生しました。
どこがおかしいのかわかりません。
詳しい方がいましたら、ご教授下さいませ。
----------------------------
Imports System.Data.OleDb
Public Class Form1
Inherits System.Windows.Forms.Form
Private oConn As OleDb.OleDbConnection = New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0" & ";Data Source=..\USER.mdb")
「Windows フォーム デザイナで生成されたコード」
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
'--DataAdapterの設定
Dim oADP As OleDb.OleDbDataAdapter
oADP = New OleDb.OleDbDataAdapter("SELECT *FORM TALK WHERE Node=0 ORDER BY No", oConn)
'--DataSetの設定
Dim oDS As New DataSet
oADP.Fill(oDS, "ROOT")
・
・
・
----------------------------
No.6ベストアンサー
- 回答日時:
>"SELECT * FROM TALK WHERE Node=" & Node & "ORDER BY No"
・「ORDER」の前にスペースが入っていない
ヘルプで「SQL エディタ」「クエリデザイナ」を調べてみて下さい
あとデバックの仕方も覚えたほうがいいですよ
エラーが出るところでブレークポイントを設定して 対象のSQLをクイックウォッチ等でコピーし、
アクセスのクエリに貼り付けて正常に動作することを確認するとか...
そのとおりでした!
やってみたら正常動作で結果表示されました。
助かりました!
サンプルコードが書籍だったため、スペースの入り無しがわかりにくくて、スペースが入っていることにまったく気が付きませんでした。
SQL文の勉強も必要ですね。
あと、デバッグ方法ですが、変数の値を見るくらいしか出来ていませんでしたが、教えていただいた方法で、今後やってみようと思います。
どうも、ありがとうございました!
No.4
- 回答日時:
一応・・・。
>SELECT *FORM TALK WHERE Node=0 ORDER BY No"
「FROM」が「FORM」になってますけど、実物は大丈夫ですよね?
この回答への補足
大変失礼いたしました。
Private Sub Form1_Loadの方は、おっしゃるとおり、FROMのスペルミスでした。
修正したところ、通りました。
が・・・
Private Sub Form1_Load内で呼んでいる、Private Sub NodeGetでも、
oADP.Fill(oDS, "Node")の行で、同じエラーが出てしました。
これも、SQL文がおかしいのでしょうか?
ちなみに、この部分の* FROMはスペルミスはしてなかったです。
(SQL文の箇所は、VS2003.NETでは構文チェックしてくれないんですね・・)
----------------------------------------
Private Sub NodeGet(ByVal Node As String, ByVal Root As String, ByVal Kaiso As Integer)
Dim oADP As OleDb.OleDbDataAdapter
Dim KaisoText As String
Dim IntLoop As Integer
For IntLoop = 0 To Kaiso
KaisoText += ""
Next
KaisoText += "+"
oADP = New OleDb.OleDbDataAdapter("SELECT * FROM TALK WHERE Node=" & Node & "ORDER BY No", oConn)
Dim oDS As New DataSet
oADP.Fill(oDS, "Node")
・
・
・
----------------------------------------
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Debug.exe実行時にWinMainCRTSt...
-
【マクロ】エラー【#DIV/0!】が...
-
Do While中のVBAアプリケーショ...
-
Amazon api について。JANコー...
-
エラー1004 PDFの保存ができま...
-
Access:結果は出るがエラー
-
VBAがブレークモードになっ...
-
IEのダウンロード通知バーのVBA...
-
Excelで下記のようにマクロを作...
-
ASPの初歩的な質問です
-
EXCEL/VBAで、自分のPCだけエラ...
-
Excel TextBoxクラスのCharacte...
-
JSP/サーブレットを用いたWebア...
-
パスワードによるシートの保護...
-
エラー:インデックスが配列の...
-
実行時エラー 438になった時の...
-
VBS実行時エラー オブジェクト...
-
VBAでピボットテーブルの作成(...
-
'Speak'メソッドは失敗しました
-
ASPでメール送信時エラーが出る
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
実行時エラー 438になった時の...
-
VBAがブレークモードになっ...
-
【マクロ】エラー【#DIV/0!】が...
-
実行時エラー -'-2147417848
-
実行時エラー3001「引数が間違...
-
実行時エラー48発生時のDLL特定...
-
【Excel VBA】マクロをボタンに...
-
マクロについて教えてください...
-
なぜこんな初歩的なVBAのIf文で...
-
VB6+SQL サーバー 2000 で 実行...
-
OLEDB.NETで接続できない
-
EXCEL/VBAで、自分のPCだけエラ...
-
ExcelVBA Range クラスの Page...
-
Invalid procedure call or arg...
-
VBAでのエラー
-
AccessVBAでExcelを起動し、罫...
-
[Delphi] データセットは閉じて...
-
VBAで実行時エラー'424' オブジ...
-
なぜエラーになるのでしょうか...
-
ADODB.Streamを使用してUTF-8を...
おすすめ情報