Dim strSQL As String
Dim cnn As New ADODB.Connection
Dim rs As New ADODB.Recordset
rs.LockType = adLockOptimistic
rs.CursorType = adOpenKeyset
cnn.CursorLocation = adUseClient
cnn.ConnectionString = connstr
cnn.Open
rs.Open "SELECT * FROM to_repeat where yz_data='" & Text1.Text & "' ", cnn
If rs.EOF = False Then
msgbox "已经存在该数据!"
Else
rs.AddNew
With rs
.Fields("yz_data") = Text1.Text
.Update
End With
Text1.Text = ""
End If
cnn.Close
我用这样的方式来检查数据库里面数据的重复问题,但是出现的问题是数据库里面的数据达到几百万条,所以影响到数据问题了,请高手指教用什么方式来实现同样的功能不影响速度!谢谢
Dim cnn As New ADODB.Connection
Dim rs As New ADODB.Recordset
rs.LockType = adLockOptimistic
rs.CursorType = adOpenKeyset
cnn.CursorLocation = adUseClient
cnn.ConnectionString = connstr
cnn.Open
rs.Open "SELECT * FROM to_repeat where yz_data='" & Text1.Text & "' ", cnn
If rs.EOF = False Then
msgbox "已经存在该数据!"
Else
rs.AddNew
With rs
.Fields("yz_data") = Text1.Text
.Update
End With
Text1.Text = ""
End If
cnn.Close
我用这样的方式来检查数据库里面数据的重复问题,但是出现的问题是数据库里面的数据达到几百万条,所以影响到数据问题了,请高手指教用什么方式来实现同样的功能不影响速度!谢谢
Public Function NewChangeSave()
Dim SaveSql As String
Dim SaveCommand As New command
On Error GoTo eNext:
SaveSql = "insert into iqms.ia_002_tabmodulespowerchange" + _
"(id, serialnumber, b_pamx, a_pamx,c_user,c_date,c_reason) Values" + _
"(S_IA_002_TABMODULESPOWERCHANGE.NEXTVAL,'" + Trim(strModulesSn) + "'," + Trim(douBPamxValue) + "," + Trim(txtChangedPower) + "," + _
"'" + Trim(txtChangeUser) + "',TO_DATE('" + Format(txtChangeDate, "yyyy-mm-dd hh:mm:ss") + "', 'YYYY-MM-DD HH24:MI:SS'),'" + _
Trim(txtChangeReason) + "')"
SaveCommand.ActiveConnection = Conn
SaveCommand.CommandType = adCmdText
SaveCommand.CommandText = SaveSql
SaveCommand.Execute
Exit Function
eNext:
MsgBox Err.Description, vbCritical, Err.Number
End Function图示:
http://hi.erp100.com/data/attachment/album/201008/22/212113pms44m55gnm7n57k.jpg