VisualStudioとSQLServerは初めてです。VisualStudioアプリケーションからデータを挿入する方法に混乱しました
System.InvalidCastExceptionのエラーが発生しました。私は何が問題なのか混乱しています。
これは私のコードです:
PatientInfoConnection.Open() 'open database connection
Dim sql As String = ""
sql = "insert into model (name, age, date_of_confinement, type_of_sickness, type_of_IVfluid, number_of_bottles, drop_rate)" & _
" values (@name, @age, @date_of_confinement, @type_of_sickness, @type_of_IV_fluid, @number_of_bottles, @drop_rate)"
Dim insert As New SqlCommand(sql, PatientInfoConnection)
insert.Parameters.AddWithValue("@name", txtName.Text)
insert.Parameters.AddWithValue("@age", nudAge.Value.ToString())
insert.Parameters.AddWithValue("@date_of_confinement", dtpDate.Value.ToString())
insert.Parameters.AddWithValue("@type_of_sickness", txtSickness.Text)
insert.Parameters.AddWithValue("@type_of_IV_fluid", txtFluid.Text)
insert.Parameters.AddWithValue("@number_of_bottles", txtBottle.Text)
insert.Parameters.AddWithValue("@drop_rate", nudDrop.Value.ToString())
insert.ExecuteNonQuery()
値に問題があったと思っています。nudAge.Valueは上下の数値であり、私のSQLデータベースではAge(int、null)です。dtpDate.Valueもあります。日時ピッカー。ToString()を使用するべきではないと思いますが、構文がわかりません。
誰か助けてもらえますか?どんな助けでもいただければ幸いです。ありがとう!
date_of_confinementは私のデータベースの日時です。フォーマットはこんな感じですか?insert.Parameters.AddWithValue( "@ date_of_confinement"、dtpDate.Value.ToShortDateString)
また、insert.Parameters.AddWithValue( "@ number_of_bottles"、Int32.Parse(txtBottle.Text))を実行しました
しかし、それでもエラーが発生しました。よくわかりません。ご協力いただきありがとうございます!
これは私が今やったことです...insert.Parameters.AddWithValue( "@ date_of_confinement"、Date.Parse(dtpDate.Value))
また、次のような変更を加えました。
insert.Parameters.AddWithValue("@age", Convert.ToInt32(txtAge.Text))
insert.Parameters.AddWithValue("@number_of_bottles", Convert.ToInt32(txtBottle.Text))
insert.Parameters.AddWithValue("@drop_rate", Convert.ToInt32(txtDrop.Text))
エラーはもうありませんが、[保存]をクリックしても、フォームを閉じて他のフォームを開いても何も起こりませんでした。何もしませんでした。
ご協力いただきありがとうございます!nn