Em có 1 table chứa cac column: ID,TenTiengViet,TenTiengAnh,DienThoai
Em Load no len datagrid view bang 1 dataset dsKhoa
Giờ em muốn nhập mới 1 dòng vào CSDL, khi ấn nút themmoi, sẽ thêm 1 dòng mới vào datagridview và hiện các ô textbox để nhập liệu
em dung cái này:Sau đó em cho select dòng này.DataRow newRow = dsKhoa.Tables["Khoa"].NewRow();
dsKhoa.Tables["Khoa"].Rows.Add(newRow);
Bi giờ em muốn khi ấn nút Lưu thì nó sẽ Update dữ liệu của dòng đang được select với những dữ liệu nhập từ textbox.
Nhưng khổ nỗi là khi add Row và table thì cái cột ID của nó lại trống không (cột đấy trong CSDL em để AutoIncrement)
lúc chạy nó báo lỗi :
Em đã thử thêm một primary key column mới vào table trong datasetDynamic SQL generation for the UpdateCommand is not supported against a SelectCommand that does not return any key column information.
đặt cả cột ID lam primary key mà vẫn không được.
Mong các cao thủ giúp đỡ nếu post được cả source code lên đây thì tốt quá.
Tiện thể em up lên cái file source code của em nè
http://www.box.net/shared/z1yb57j1ht
Lỗi trên là do trong Table của bạn không có set Primary Key cho cột nào cả. Khi mình mở file .mdf của bạn lên thì đúng là bạn không set Primary Key cho cột nào cho nên mới bị lỗi trên.
Ngoài ra để update CSDL mình đề nghị sử dụng SqlAdapter.Update để update dữ liệu nhé.