我的录入窗体放着一些文本匡和combox,下面是一排功能按钮,录入,删除,查询什么的。功能按钮下面是一个FLEXGRID。这就是界面了。
Public adors As New adodb.Recordset
Public adoconn As New adodb.Connection
Public sQsql As String
Public conn As String conn = "FileDSN=AAA.dsn;UID=sa;PWD=111"
adoconn.Open conn
sQsql = "select * from 客户资料 where 客户编号='" & Trim(txtkhID) & "'"
adors.Open sQsql, adoconn, adOpenKeyset, adLockOptimistic
If adors.RecordCount > 0 Then
MsgBox "已经存在此档案编号!", vbOKOnly + vbExclamation, "警告"
txtkhID.SetFocus
txtkhID.SelStart = 0
txtkhID.SelLength = Len(txtID)
adors.Close
adoconn.Close
Exit Sub
End If
adors.Close
'添加新记录
sQsql = "select * from 客户资料 "
adors.Open sQsql, adoconn, adOpenKeyset, adLockOptimistic
If adors.RecordCount > 0 Then
adors.AddNew
adors.Fields(0) = txtkhID
adors.Fields(1) = txtkhName
adors.Fields(2) = txtAss
adors.Fields(3) = txtsfID
adors.Fields(4) = txtAddr
adors.Fields(5) = ComPay
adors.Fields(6) = txtKnow
adors.Fields(7) = Compro
adors.Fields(8) = txtOper
adors.Fields(9) = DTPicker1
adors.Update
MsgBox "记录添加成功!"
txtkhID = ""
txtkhName = ""
txtAss = ""
txtAddr = ""
txtsfID = ""
txtKonw = ""
adors.Close
adoconn.Close
End If
End Sub
Public adors As New adodb.Recordset
Public adoconn As New adodb.Connection
Public sQsql As String
Public conn As String conn = "FileDSN=AAA.dsn;UID=sa;PWD=111"
adoconn.Open conn
sQsql = "select * from 客户资料 where 客户编号='" & Trim(txtkhID) & "'"
adors.Open sQsql, adoconn, adOpenKeyset, adLockOptimistic
If adors.RecordCount > 0 Then
MsgBox "已经存在此档案编号!", vbOKOnly + vbExclamation, "警告"
txtkhID.SetFocus
txtkhID.SelStart = 0
txtkhID.SelLength = Len(txtID)
adors.Close
adoconn.Close
Exit Sub
End If
adors.Close
'添加新记录
sQsql = "select * from 客户资料 "
adors.Open sQsql, adoconn, adOpenKeyset, adLockOptimistic
If adors.RecordCount > 0 Then
adors.AddNew
adors.Fields(0) = txtkhID
adors.Fields(1) = txtkhName
adors.Fields(2) = txtAss
adors.Fields(3) = txtsfID
adors.Fields(4) = txtAddr
adors.Fields(5) = ComPay
adors.Fields(6) = txtKnow
adors.Fields(7) = Compro
adors.Fields(8) = txtOper
adors.Fields(9) = DTPicker1
adors.Update
MsgBox "记录添加成功!"
txtkhID = ""
txtkhName = ""
txtAss = ""
txtAddr = ""
txtsfID = ""
txtKonw = ""
adors.Close
adoconn.Close
End If
End Sub
adors.Open sQsql, adoconn, adOpenKeyset, adLockOptimistic
If adors.RecordCount > 0 Then(如果没有纪录,,,,,会怎么样呢?)
adors.AddNew
adors.Fields(0) = txtkhID
adors.Fields(1) = txtkhName
adors.Fields(2) = txtAss
adors.Fields(3) = txtsfID
adors.Fields(4) = txtAddr
adors.Fields(5) = ComPay
adors.Fields(6) = txtKnow
adors.Fields(7) = Compro
adors.Fields(8) = txtOper
adors.Fields(9) = DTPicker1
adors.Update
MsgBox "记录添加成功!"
txtkhID = ""
txtkhName = ""
txtAss = ""
txtAddr = ""
txtsfID = ""
txtKonw = ""
adors.Close
adoconn.Close
End If
End Sub
记录集rs再次打开前要先关闭,
可以用rs.State=adStateOpen来判断,
其次,在记录集rs插入和更新前,
最好判断是否支持该操作,
rs.Supports(adAddNew)
rs.Supports(adUpdate)
^_^