前提・実現したいこと
初歩的な事を聞いて申し訳ないですがご教示いただけるとありがたいです。
pc:Windows 7
DB:Accessはmdb
開発環境:Visual Studio2008
MainForm:親画面
●親画面には表示用のDataGridViewを設置してます。
InputForm:子画面
●入力項目を設置してます。
●課題で住所録を作成しています。
先輩の指示のもと現状行動に手を加えて作成していくことを前提に作成してますので、
作り方が変なところや無駄な部分も多いと思います。
●親画面に設置した「登録ボタン」⇒子画面の入力画面を開き⇒子画面の「新規登録ボタン」で
DataGridViewにはレコードは追加されるのですが、DBにレコードが追加されません。
以下のエラーメッセージが発生しました。
発生している問題・エラーメッセージ
デバックすると ⇒ CommSQL.DB_Insert(adl_data);位置で ●オブジェクトインスタンスの作成にはnewキーワードを使用します。 ●メソッドを呼び出す前にオブジェクトがNULLでいいかどうか確認して下さい。 と表示されます。
該当のソースコード
C# Visual Studio2008
1--子画面-- 2 //新規登録ボタン 3 private void btnNewInput_Click(object sender, EventArgs e) 4 { 5 6 //データグリッドビューに反映する際の形式指定 7 adl_data.Number = tbNumber.Text; 8 adl_data.FamilyName = tbFamilyName.Text; 9 adl_data.Name = tbName.Text; 10 adl_data.FamilyNameKana = tbFamilyNameKana.Text; 11 adl_data.NameKana = tbNameKana.Text; 12 adl_data.Keisyo = tbKeisyo.Text; 13 14※一部所略 15 //ここでDBに追加する 16 CommSQL.DB_Insert(adl_data); 17 18 this.DialogResult = DialogResult.OK; 19 20 this.Close(); 21 } 22
---作成したクラス--- //登録関数(書き込み) public string DB_Insert(AddressDataList al) { string sql = "INSERT INTO 登録者情報(" + /*テーブル名*/ "登録番号," + "姓," + "名," + "姓カナ," + "名カナ," + "敬称," + "郵便番号," + "住所1," + "住所2," + "生年月日," + "性別," + "電話," + "携帯電話," + "メールアドレス," + "URL," + "画像ファイル名," + "備考," + "メール送信," + "印刷," + ")" + "VALUS(" + "{0}," + "{1}," + "{2}," + "{3}," + "{4}," + "{5}," + "{6}," + "{7}," + "{8}," + "{9}," + "{10}," + "{11}," + "{12}," + "{13}," + "{14}," + "{15}," + "{16}," + "{17}," + "{18}," + "{19}," + ")"; string insertSQL = string.Format(al.Number,al.FamilyName,al.Name ,al.FamilyNameKana,al.NameKana,al.Keisyo ,al.PostalCode1,al.Address1,al.Address2 ,al.dtpBirthday,al.sex,al.Phone,al.MobilePhone ,al.EMail1,al.URL, sql, al.ImgName, al.Remarks ,al.MailSending,al.Print); return insertSQL; }
回答1件
あなたの回答
tips
プレビュー