Veritabanından veriye veri almaya çalışıyorum. Durum SELECT * FROM entries WHERE edate='" & Me.dtpDate.Value.Date & "'"
'dir. Ancak ölçüt ifadesinde Veri türü uyuşmazlığı hata iletisini alıyorum. Lütfen aşağıdaki kodu inceleyin. Ayrıca hata mesajının ekran görüntüsünü ekledim.Ölçüt ifadesinde veri türü uyuşmazlığı (vb.net, erişim)
Private Sub dtpDate_Leave(ByVal sender As Object, ByVal e As System.EventArgs) Handles dtpDate.Leave
'GetDayBookOpeningBalance()
If Me.lblHeading1.Text <> "Daybook entry" Then
Using MyConnection As OleDb.OleDbConnection = FrmCommonCodes.GetConnection(),
MyAdapter As New OleDb.OleDbDataAdapter("SELECT * FROM entries WHERE edate='" & Me.dtpDate.Value.Date & "'", MyConnection)
'Format(Me.dtpDate.Value.Date, "dd/MM/yyyy"))
If MyConnection.State = ConnectionState.Closed Then MyConnection.Open()
Using MyDataSet As New DataSet
MyAdapter.Fill(MyDataSet, "entries")
Me.grdDayBook.DataSource = MyDataSet.Tables("entries")
Dim DataSetRowCount As Integer = MyDataSet.Tables("entries").Rows.Count
If DataSetRowCount > 0 Then
SetGridProperty()
Else
ShowBlankGrid()
FrmCommonCodes.MessageDataNotFound()
End If
End Using
End Using
Else
ShowBlankGrid()
End If
End Sub
Bu, parametreli sorgular kullanmadığı için tam olarak ne olabilir. Tablodaki sütun edatının veri türü nedir? Ve eğer bir dize değilse, bir dizeyi neden değer olarak iletiyorsunuz? – Steve
ve onun a tarih alanı –
SQL'de bir tarihin etrafında keneler koyduğunuzda metin olur. Gerçek veri türünü korumak için SQL Parametrelerini kullanın. Eğer onları atacaksanız DataAdapter ve DataSet oluşturmanıza da gerek yoktur. – Plutonix