課題でVBからデータベースの操作についてのプログラムを作成しているのですが、どうしてもエラーが出るのでお願いします。
フォームロード時に下の処理をしているのですが、
Dim sql As String
Dim cm As OleDb.OleDbCommand
Dim rd As OleDb.OleDbDataReader
sql = "select max(番号) as 数 from アドレス帳"
Try
cm = New OleDb.OleDbCommand(sql, cn)
rd = cm.ExecuteReader
Catch ex As Exception
MessageBox.Show(ex.Message, "Access Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
rd.Close()
Exit Sub
End Try
If rd.Read Then
frmMenu.num = rd.Item("数")
frmMenu.num += 1
End If
frmMenu.num += 1
txtnum.Text = frmMenu.nu
この部分なんですが、
If rd.Read Then
frmMenu.num = rd.Item("数")
frmMenu.num += 1
End If
frmMenu.num += 1
txtnum.Text = frmMenu.nu
・frmMenu.num はInteger型の変数です。初期値に0が入っています。
この部分では、データが読めた場合はデータベースの方から
数を引っ張ってきて、+1をして、読めない(データがない)
場合には+1だけをしたいのですが、データがある時は正常に
動くのですが、データがない時に動かそうとすると、
型 'DBNull' から型 'Integer' への変換は無効です
のエラーがでて困っています。
これは、読めたか読めなかったか判定出来ていないということなのでしょうか?
No.1ベストアンサー
- 回答日時:
rd.Item("数")が Nullだからでしょうね
If rd.Read andalso Not IsDBNull(rd.Item("数")) Then
でどうでしょうか。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) VBAが止まります。 3 2022/08/31 14:09
- Visual Basic(VBA) VBAでoutlook365が起動しません。 4 2022/08/25 13:31
- Excel(エクセル) マクロでテキストファイルを読み込んだ際の最終セルにデータと改行が含まれる問題の改善方法 2 2022/03/25 16:50
- Visual Basic(VBA) VBA Userformで一部別シートに転記がしたいのですが 2 2023/05/24 13:08
- Visual Basic(VBA) VBAのユーザーフォームのテキストボックスに入力制限をしたい 6 2022/11/15 08:28
- Excel(エクセル) VBA フォルダ見える化のコードについて 2 2023/06/19 15:04
- Visual Basic(VBA) 【前回の続き続きです、ご教示ください】VBAの記述方法がわかりません。 2 2022/08/24 20:49
- Visual Basic(VBA) access count数を変数に格納 2 2022/03/30 19:21
- Visual Basic(VBA) いつもお世話になっております、VBAで教えて頂きたいのですが 2 2022/05/05 22:20
- C言語・C++・C# c言語の問題の説明、各所ごとに 5 2023/07/26 11:03
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VB.NET DataReaderが開かれている
-
DBNULLについて
-
フォーム上で押されたボタンに...
-
リクエストに応じたselectedの...
-
Java-jspの画面入力値保持について
-
「<c:forEach タグが終了し...
-
jspからServletを呼び、元のjsp...
-
javascriptでセッションを取得
-
webアプリを作ってます。エラー...
-
JSPからJSPへ情報を渡せる?
-
三菱GOTの画面切り替えについて
-
C言語で今まで表示していた画面...
-
フォームで同じ複数のnameで違...
-
腕時計の時報をならないように...
-
Strutsで、どのRadioボタンが選...
-
ASP.NET 画面遷移前の状態を保...
-
VB6 開発環境のエディタに行...
-
遷移元を判定したい!
-
ServletからHTMLページへの遷移...
-
VBAでTIFF画像を読み込むには?
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VB.NET DataReaderが開かれている
-
Formのデータが欠落することがある
-
dbからデータをとりだす際、sql...
-
JavaScriptとACCESSデータベー...
-
DBNULLについて
-
C言語からデータベースにアクセス
-
struts 2つの選択肢(selec...
-
ruby on railsでDataBaseのデー...
-
「XML over HTTP」「非同期HTTP...
-
login,logoutのできるページ
-
フォーム上で押されたボタンに...
-
リクエストに応じたselectedの...
-
jspからServletを呼び、元のjsp...
-
Java-jspの画面入力値保持について
-
「<c:forEach タグが終了し...
-
三菱GOTの画面切り替えについて
-
C言語で今まで表示していた画面...
-
腕時計の時報をならないように...
-
webアプリを作ってます。エラー...
-
ボタンが活性化の場合とは、ボ...
おすすめ情報