其次检查数据字段是否与数据库字段属性一致;
最后修改删除模块如下:
Sub del(newsclass)
Dim dataconn
Dim strConn
Dim DataCmd
set dataconn=server.CreateObject("ADODB.Connection")
strConn="Driver={Microsoft Access Driver (*.mdb)}DBQ=" &server.MapPath("db.mdb")
dataconn.Open(strConn)
set DataCmd=server.CreateObject("ADODB.Command")
set DataCmd.ActiveConnection = dataconn
DataCmd.CommandText="Delete From newsclass Where class='"&newsclass &"'"
'若class属性为数字则:
'DataCmd.CommandText="Delete From newsclass Where class="&newsclass
DataCmd.Execute
dataconn.Close
set dataconn=nothing
set DataCmd=nothing
End Sub
在过程(Sub)或者函数(Function)中尽量不要使用外部数据库链接,而是在内部新建立一个数据库链接,用完后再释放
尽量使用参数传递
尽量直接使用SQL语句 *** 作数据库,而不是使用游标间接控制
在Sub过程中尽量不要使用跳转Redirect
1:游标中有进行排序,在update *** 作第一条之后,有可能会导致排序发生变化第一条变到了第二条,在第二次遍历时,应该处理的是第二条记录但依然处理第一条。你觉得合理吗?2:只是警告,并不是错误,警告并不会影响结果的正确与否,ok?这种警告的原因是wheere current of有释放锁的 *** 作,但由于你之前并没有加上for update锁表,那就不需要释放锁了,因为根本不存在锁。
3:。。。
4:order by 只是一种对结果集的排序 *** 作,既然你又不需要显示它,对它的排序毫无意义,反而会加系ORA的负荷。
5:帖的代码太难看,麻烦下次搞个工整的或者贴图。
游标是从表中检索出的结果集,可以被看作指向结果集中某一行的指针(Pointer)与结果集进行交互的机制。游标的每个时间点只能指向一行,但是可以根据需要指向结果集中其他的行。
游标从概念上讲是基于数据库的表返回结果集,由于它指示结果集中的当前位置,就像计算机屏幕上的光标指示当前位置一样,“游标”由此得名。游标概述游标是通过游标库来实现的,而游标库常常是作为数据库系统或数据访问API的一部分而得以实现的软件,用来管理从数据源返回的数据的结果集。游标跟踪结果集中的位置,并允许对结果集逐行执行多个 *** 作,在这个过程中可能返回至原始表,也可能不返回至原始表。
在初始的时候,游标被放置在结果集中第一行的前面。为了使游标指向第一行,要执行FETCH动作。当游标指向结果集中某行的时候,可以对这行数据进行加工处理,要想得到下一行数据,要继续执行FETCH *** 作。FETCH *** 作可以重复执行,直到完成结果集中的所有行。
1.游标的作用对查询数据库所返回的记录进行遍历。
2.游标的属性((1)游标是只读的,也就是不能更新它。
(2)游标是不能滚动的,也就是只能在一个方向上进行遍历,不能在记录之间随意进退,也不能跳过某些记录。
(3)避免在已经打开游标的表上更新数据。游标使用游标对关系数据库来说极其重要,它是 *** 作数据库服务器上记录的一种重要机制。在存储过程中使用游标,经过声明游标、打开游标、 *** 作游标和关闭游标等几个步骤,将游标指向的数据取到本地,在结束时关闭游标。
1.游标的使用步骤(1)声明游标语法格式:DECLARE+游标名+CURSORFOR+SELECT语句DECLARE为声明游标的关键字,后面跟游标的名称,CURSORFOR表示游标要 *** 作的数据结果集,后面跟一条数据库的SELECT检索语句。例如,下面语句声明了一个叫mycoursor的游标。DECLAREmycoursorCURSORFORselectuser_name
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)