我試圖正確地將數據適配器綁定到我的SQL數據庫,以便將某人在c#程序中提交的記錄插入。我覺得我是80%的路,但現在我碰到了一個麻煩。使用C#數據對象將記錄插入到SQL Server數據庫
因此,在下面的代碼中,我可以創建和綁定數據表就好了。我測試了刪除功能,他們工作得很好。我現在試圖有一個'保存'按鈕插入一個新的行到我的數據庫。我現在的問題是用戶應該放入他們的'筆記'然後點擊保存。我自動填充其餘列,但我不知道如何抓取用戶輸入的註釋。
這是到目前爲止我的代碼:
string userVerify = User.CurrentUser.UserName.ToString();
int participantID = this.mParticipant.ParticipantID;
DateTime date = DateTime.Now;
string properRow = dtNotes[1, dtNotes.NewRowIndex - 1].Value.ToString();
sqlDataAdapter.InsertCommand = new SqlCommand("INSERT INTO xxMyDatabasexx (ParticipantID,Verifier,Notes,Date) VALUES (@participantID,@notes, @userVerify,@date);");
sqlDataAdapter.InsertCommand.Parameters.AddWithValue("@participantID", participantID);
sqlDataAdapter.InsertCommand.Parameters.AddWithValue("@userVerify", userVerify);
sqlDataAdapter.InsertCommand.Parameters.AddWithValue("@date", date);
sqlDataAdapter.InsertCommand.Parameters.AddWithValue("@notes", properRow);
sqlDataAdapter.Fill(dataTable);
sqlDataAdapter.Update(dataTable);
我知道,properRow變量的邏輯是錯誤的。當然,如果沒有行,那麼程序會崩潰,但是如果沒有輸入新的註釋,它就會重現輸入的最後一個註釋,當然這也是錯誤的。當我在sqlDataAdapter.Fill時查看我的dataTable時,可以在正確的列中看到註釋,但我不知道如何簡單地保存它。
任何幫助表示讚賞。謝謝。
編輯: 我不知道的是,InsertCommand(自然)也需要ExecuteNonQuery命令。我是在假設,因爲刪除和更新都沒有,該插入不會。這似乎解決了這個問題。感謝所有的幫助。
供參考:像DataAdapter這樣的數據對象綁定到* controls *,它們*連接*到數據庫。 – RBarryYoung
我不BERY年輕,但我會提的是,當你說,「我覺得我的方式80%」,你應該諒解,最後20%的花費80%的時間。 –
隨口說說,在'.Fill'看起來不合適。註釋掉該行並嘗試。 – RBarryYoung