Chào các bạn,
Mình đang viết chương trình bằng quản lý khách hàng VB.Net, mình gặp một vấn đề như thế này, thêm dữ liệu vào CSDL thông qua Textbox và thêm Ngày Sinh thông qua DateEdit, mình sử dụng DateEdit tích hợp vào Visual của DevExpress chứ không phải Datetimepicker, cũng giống nhau cả thôi, do yêu cầu cấp trên
//Hàm kiểm tra trùng ID
Public Function checkID(ByVal ID As String) As String
Dim sqlCom As New SqlCommand("Select Count(MaKH) From [TTKH] Where MaKH='" & ID & "' ", con)
Dim count As String = Convert.ToString(sqlCom.ExecuteScalar())
Return count
End Function
Private Sub btnthem_Click(sender As Object, e As EventArgs) Handles btnthem.Click
If (checkID(txtmakh.Text) > 0) Then
MessageBox.Show("Mã khách hàng đã tồn tại!")
ElseIf txtmakh.Text = "" Then
MessageBox.Show("Chưa nhập mã khách hàng")
Else
Try
Dim row As DataRow = dt.NewRow()
row("MaKH") = txtmakh.Text
row("HoVaTen") = txthovaten.Text
row("CMND") = txtcmnd.Text
row("NgaySinh") = DateEdit1.DateTime
row("DiaChi") = txtdiachi.Text
row("DienThoai") = txtdienthoai.Text
row("Email") = txtemail.Text
row("Password") = txtpassword.Text
dt.Rows.Add(row)
GridControl1.DataSource = dt
Dim commandInsert As New SqlCommand()
commandInsert.Connection = con
commandInsert.CommandType = CommandType.Text
commandInsert.CommandText = "Insert Into TTKH Values (@MaKH,@HoVaTen,@CMND,@NgaySinh,@DiaChi,@DienThoai,@Email,@Password)"
commandInsert.Parameters.Add("@MaKH", SqlDbType.NVarChar, 15, "MaKH")
commandInsert.Parameters.Add("@HoVaTen", SqlDbType.NVarChar, 50, "HoVaTen")
commandInsert.Parameters.Add("@CMND", SqlDbType.NVarChar, 12, "CMND")
commandInsert.Parameters.Add("@NgaySinh", SqlDbType.DateTime).Value = "NgaySinh"
commandInsert.Parameters.Add("@DiaChi", SqlDbType.NVarChar, 255, "DiaChi")
commandInsert.Parameters.Add("@DienThoai", SqlDbType.NVarChar, 20, "DienThoai")
commandInsert.Parameters.Add("@Email", SqlDbType.NVarChar, 50, "Email")
commandInsert.Parameters.Add("@Password", SqlDbType.NVarChar, 20, "Password")
da.InsertCommand = commandInsert
da.Update(dt)
MessageBox.Show("Lưu thành công")
Catch ex As Exception
MessageBox.Show(ex.Message)
End Try
End If
End Sub,
Khi chạy thông báo lỗi failed to convert parameter value from a string to a datetime