int weaponDamage = Convert.ToInt32(dt.Rows[randomItem][2]);
// dt= DataTable
// randomItem = randomly chooses a row from the datatable
そのコードはスローします
「InvalidCastException が処理されませんでした。オブジェクトを DBNull から他の型にキャストできません」。
はい、正しい列を使用しています。はい、列全体に値があります。奇妙なことに、プログラムが実行されることがありますが、次回は再び例外が発生します。データベース内のデータ型に問題がある可能性はありますか? Number に設定され、Field Size プロパティは Integer に設定されます。