你想用If mrc.EOF = True Then 来判断是否有符合条件的记录?
这个方法并不保险,我想你的user_Info 表中的user_ID 肯定是唯一的吧?这样返回的记录集mrc中肯定只有一个记录,那么mrc.EOF 肯定是 True ,任何情况下都是。
还是根据返回的记录数来判定吧:
Set mrc = New ADODB.Recordset
mrc.Open txtSQL, cnn, adOpenKeyset, adLockOptimistic
if msrc.RecordCount >0 then
.....
end if
这个方法并不保险,我想你的user_Info 表中的user_ID 肯定是唯一的吧?这样返回的记录集mrc中肯定只有一个记录,那么mrc.EOF 肯定是 True ,任何情况下都是。
还是根据返回的记录数来判定吧:
Set mrc = New ADODB.Recordset
mrc.Open txtSQL, cnn, adOpenKeyset, adLockOptimistic
if msrc.RecordCount >0 then
.....
end if
if mrc.recordcount=0 then
“这样返回的记录集mrc中肯定只有一个记录,那么mrc.EOF 肯定是 True ,任何情况下都是。“这样的情况,vb中是比较准确的
---->
If mrc.BOF AND mrc.EOF Then
不能运行的原因可能是你所引用的函数ExecuteSQL没有定义:
Set mrc = ExecuteSQL(txtSQL, MsgText)改一下:
dim cnn as new adodb.connection
cnn.open "Driver={SQL Server};" & _
"Server=MyServerName;" & _
"Database=myDatabaseName;" & _
"Uid=;" & _
"Pwd="
Set mrc = cnn.Execute(txtSQL)