使用vb6制作程序n尝试从msaccess数据库中获取数据,在vb6中显示并将数据保存到oracle表数据库中。
oracle中的表名是testcoba。现在我可以将数据从vb6保存到oracle表。但我想要的是当数据已经存在于表中时,不会添加数据。
我hv 2 datetimepicker调用DTPawal& DTPakhir。 DTP awal是开始日期,DTPakhir是结束日期。 所以用户首先在dtpawal n dtp akhir picker中选择日期。然后数据将显示在vb6中并保存到oracle数据库。
那么我如何根据datetimepicker中用户选择的日期过滤数据添加? 如果在n之前已经选择了日期(来自2 datetimepicker),那么日期中的数据已经存在于表中,则不会添加它们。 但如果日期(从2 datetimepicker)之前从未选择过,则数据将在oracle表中添加..
Sub datagrid2oracledb(connstr As String, dtfmt As String)
Dim oconn As New ADODB.Connection, rsa As ADODB.Recordset
Dim i As Integer, strSQL As String, row
Dim rs As ADODB.Recordset
Set rs = Adodc1.Recordset
On Error GoTo Error_Handler
10 oconn.Open connstr
MsgBox dg1.ApproxCount & "?" & cnt
If rs.Fields(2).Value = Format$(DTPawal.Value, "MM/dd/yyyy") Then
MsgBox "date already exists"
Else
With rs
Do While Not .EOF
30 strSQL = "INSERT INTO testcoba (name,title,checktime)VALUES ('" & .Fields(0).Value & "','" & .Fields(1).Value & "',TO_DATE('" & .Fields(2).Value & "', '" & dtfmt & "'))"
40 Set rs = oconn.Execute(strSQL)
50 Set rs = Nothing
.MoveNext
Loop
End With
60 oconn.Close
70 Set oconn = Nothing
MsgBox "Done"
Exit Sub
End If
Error_Handler:
If (Erl <> 25) Then
MsgBox i & ":" & Erl & ":" & Err.Number & ":" & Err.Description
End If
End Sub
我尝试在我的代码中添加它,但不能正常工作: 如果rs.Fields(2).Value = Format $(DTPawal.Value,&#34; MM / dd / yyyy&#34;)那么 MsgBox&#34;日期已经存在&#34;
请帮我解决这个问题..