对记录集出现的一些问题的总结

  1.set rs =nothingrs.close的异同点

setrs=nothing是清空对象 ,要将对象从内存中完全删除,可将对象变量设置为 Nothing

rs.close  是关闭对象, 使用 Close方法可关闭   Connection   对象或 Recordset对象以便释放所有关联的系统资源。关闭对象并非将它从内存中删除,可以更改它的属性设置并且在此后再次打开。

联系实际:拿一个装了水的瓶子比喻:set rs=nothing就是把水倒掉,当你要喝时它已经没有了,只能再一次的装水才可以;而rs.close是将水杯的盖子盖住,当你想喝水时,只要打开盖子就可以了,水还是存在的。

 2.

Public Function ExecuteSQL(ByVal SQL As String, MsgString As String) As adodb.Recordset   

'执行SQL语句,注意理解函数返回值是一个记录集

Dim cnn As adodb.Connection

Dim rst As adodb.Recordset

Dim sTokens() As String

 

On Error GoTo ExecuteSQL_error       '错误处理

sTokens = Split(SQL)

Set cnn = New adodb.Connection

cnn.Open ConnectString

 

If InStr("INSERT,DELETE,UPDATE", UCase$(sTokens(0))) Then         '判断传入的SQL语句是以insert ,delete,update 开头的吗?

    cnn.Execute SQL                                                                              '若是,则执行语句      insert,delete,update语句不用打开记录集操作,直接使用cnn.execute即可。

    MsgString = sTokens(0) & "query successful"

Else                                                                                                       '若不是,则执行查询语句

   Set rst = New Recordset

   rst.Open Trim$(SQL), cnn, adOpenKeyset, adLockOptimistic        '将查询结果放在记录集中

   Set ExecuteSQL = rst

   MsgString = "查询到" & rst.RecordCount & "条记录"

End If

 

在这个位置不能关闭记录集rst或释放rst的空间

 

ExecuteSQL_Exit:

Set rst = Nothing

Set cnn = Nothing

Exit Function

 

ExecuteSQL_error:

MsgString = "查询错误" & Err.Description

Resume ExecuteSQL_Exit

End Function

ExecuteSQL这个记录集是rst的缓存对象,所以当rst的变动会影响到ExecuteSQL这个记录集,如rst.close;而set rst=nothing后,rst就从实际对象中分离出来了,而通过rst对象创建的对象都将被孤立。这些已缓存对象的任何属性依然可用

3.

通过记录集的操作:

记录集是一个对象:有它自身的方法,常见的有addnew,update,delete,open,close,find,move

并没有select这样的方法,所以不能直接查询;要想查询就等用open方法,和sql查询语句。

刚开始学的时候有一个误区:认为任何操作都要先打开记录集。

 

通过connection对象的操作:

connection对象的方法有:opencloseexecute

 

·Execute方法

该方法用于执行SQL语句。根据SQL语句执行后是否返回记录集,该方法的使用格式分为以下两种:

.执行SQL查询语句时,将返回查询得到的记录集。用法为:

Set 对象变量名=连接对象.Execute("SQL 查询语言")

Execute方法调用后,会自动创建记录集对象,并将查询结果存储在该记录对象中,通过Set方法,将记录集赋给指定的对象保存,以后对象变量就代表了该记录集对象。

.执行SQL的操作性语言时(如:deleteupdate),没有记录集的返回。此时用法为:

连接对象.Execute "SQL 操作性语句" [, RecordAffected][, Option]

·RecordAffected 为可选项,此出可放置一个变量,SQL语句执行后,所生效的记录数会自动保存到该变量中。通过访问该变量,就可知道SQL语句队多少条记录进行了操作。

·Option 可选项,该参数的取值通常为adCMDText,它用于告诉ADO,应该将Execute方法之后的第一个字符解释为命令文本。通过指定该参数,可使执行更高效。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
大数据(Big Data)是指规模庞大、复杂度高且难以用传统数据处理方法进行捕捉、管理和处理的数据集合。它通常具有以下三个特征: 数据量大:大数据指的是数据集的规模非常庞大,远远超出了传统数据处理工具的能力范围。这些数据集可能包含数十亿甚至数万亿的记录。 复杂度高:大数据往往包含多种类型和格式的数据,例如结构化数据(如关系型数据库中的数据)、半结构化数据(如XML文件)和非结构化数据(如文本、图像和音频等)。这些数据的复杂性使得处理和分析变得更加困难。 处理速度快:大数据处理要求在短时间内处理和分析大规模的数据。传统的数据处理方法往往无法满足实时或近实时处理的需求。 大数据的出现主要是由于以下几个因素的影响: 数据的爆发性增长:随着互联网的普及和各种传感器、设备的广泛应用,数据的产生和积累呈现爆发式增长的趋势。 新型数据源的涌现:除了传统的结构化数据,越来越多的非结构化和半结构化数据源涌现,例如社交媒体数据、日志文件、传感器数据、地理位置数据等。 技术的进步:大数据处理的技术工具和技术方法得到了快速发展,例如分布式计算、云计算、并行处理、机器学习和人工智能等技术的应用,使得大数据的存储、管理和分析变得可行和高效。 大数据的处理和分析可以带来许多潜在的好处,包括更深入的洞察力、更准确的决策支持、更精细的个性化服务、更高效的资源利用和创新等。在各个领域,如商业、医疗、金融、交通、科学研究等,大数据正发挥着重要的作用,并为我们带来了新的机遇和挑战。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值