asp编写用数组操作数据库记录的函数

在ASP中处理数据库的NULL记录 在许多时候我们使用ASP+数据库进行网站编程的时候,会遇上读取某记录出来和另外一些变量进行运算的情况,如果取的记录数据为NULL值,那么可能会造成程序返回错误结果,如果每个读记录的语句后都加上判断语句,程序又显得拖沓,因此,我认为编写一个专用的函数对读取的记录进行自动或半自动识别是很好的办法。    根据VBscript的数据类型定义,结合利用VarType函数,构造以下自动处理函数Initdat 阅读详情

rs_field(),字段名数组,0编号数组为关键字字段

rs_type(),字段类型数组 1、整型 2、字符串 3、真值 4、日期时间

str_field(),返回记录数组

strsql,数据库查询语句

str_error,错误提示

 '****************************************获得记录
sub get_record(rs_colnum,rs_field(),rs_type(),str_field(),strsql,str_error)
  dim resbuff
  dim i
  set resbuff=server.CreateObject("adodb.recordset")
  resbuff.open strsql,conn,1,1
  if err.number <> 0 then
    response.write "数据库操作失败:"&err.description
    response.redirect"error.htm"
     else
       if not resbuff.eof and not resbuff.bof  then
    for i=1 to rs_colnum
         if rs_field(i)<>"" then
       Select Case rs_type(i)
          Case 1
         str_field(i)=resbuff(rs_field(i))
       Case 2
         str_field(i)=resbuff(rs_field(i))
       Case 3
         str_field(i)=get_field_if(resbuff(rs_field(i)),"1","0")
       Case 4
         str_field(i)=resbuff(rs_field(i))
       Case Else
          str_field(i)=resbuff(rs_field(i))
       End Select
    end if
    next
  else
     ' response.Redirect("../public/error.asp?strerror="& str_error)
       end if
    end if
   resbuff.close
  set resbuff=nothing
end sub
'*****************************添加记录,关键字为数据库自动编号
sub add_record(rs_colnum,rs_field(),rs_type(),str_field(),strsql,str_error)
  dim resbuff
  dim i
  set resbuff=server.CreateObject("adodb.recordset")
  resbuff.open strsql,conn,1,2
  if err.number <> 0 then
    response.write "数据库操作失败:"&err.description
    response.redirect"error.htm"
  else
     if  resbuff.eof and  resbuff.bof  then
       resbuff.addnew
    for i=1 to rs_colnum
      Select Case rs_type(i)
            Case 1 'intege
                resbuff(rs_field(i))=cint(str_field(i))
      Case 2 'string
      resbuff(rs_field(i))=str_field(i)
      Case 3
            resbuff(rs_field(i))= getif(str_field(i),"1")
      Case 4 'date
      resbuff(rs_field(i))=cdate(str_field(i))
      Case 5
            resbuff(rs_field(i))= csng(str_field(i))
      Case Else
          resbuff(rs_field(i))=str_field(i)
   End Select
    next
   resbuff.update
  else
      response.Redirect("../public/error.asp?strerror=" & str_error)
     end if
   end if
   resbuff.close
  set resbuff=nothing
end sub
'**********************添加记录,提供用户关键字***************************
sub add_record_key(rs_colnum,rs_field(),rs_type(),str_field(),strsql,str_error)
  dim resbuff
  dim i
  set resbuff=server.CreateObject("adodb.recordset")
  resbuff.open strsql,conn,1,2
  if err.number <> 0 then
    response.write "数据库操作失败:"&err.description
    response.redirect"error.htm"
  else
     if  resbuff.eof and  resbuff.bof  then
       resbuff.addnew
    for i=0 to rs_colnum-1
      Select Case rs_type(i)
            Case 1 'intege
                resbuff(rs_field(i))=cint(str_field(i))
      Case 2 'string
        resbuff(rs_field(i))=str_field(i)
       Case 3
            resbuff(rs_field(i))= getif(str_field(i),"1")
      Case 4 'date
             resbuff(rs_field(i))=cdate(str_field(i))
         Case 5
            resbuff(rs_field(i))= csng(str_field(i))
       Case Else
          resbuff(rs_field(i))=str_field(i)
   End Select
    next
   resbuff.update
  else
      response.Redirect("../public/error.asp?strerror=" & str_error)
     end if
   end if
   resbuff.close
  set resbuff=nothing
end sub

'***************************更新记录******************************
sub update_record(rs_colnum,rs_field(),rs_type(),str_field(),strsql,str_error)
 dim resbuff
 dim i
  set resbuff=server.CreateObject("adodb.recordset")
  resbuff.open strsql,conn,1,2
  if err.number <> 0 then
    response.write "数据库操作失败:"&err.description
    response.redirect"error.htm"
  else
     if not resbuff.eof and not resbuff.bof  then
    for i=1 to rs_colnum
        Select Case rs_type(i)
            Case 1
                resbuff(rs_field(i))=cint(str_field(i))
      Case 2
      resbuff(rs_field(i))=str_field(i)
      Case 3
            resbuff(rs_field(i))= getif(str_field(i),"1")
      Case 4
            resbuff(rs_field(i))= cdate(str_field(i))
      Case 5
            resbuff(rs_field(i))= csng(str_field(i))
       Case Else
          resbuff(rs_field(i))=str_field(i)
   End Select
    next
   resbuff.update
  else
      response.Redirect("../public/error.asp?strerror=" & str_error)
     end if
   end if
   resbuff.close
  set resbuff=nothing
end sub
'****************************删除记录**********************
sub del_record(ifcheck,sql_num,sql(),str_error)
dim resbuff
dim i
dim strsql
if ifcheck=1 then
  set resbuff=server.createobject("adodb.recordset")
   for i=1 to sql_num
       resbuff.open sql(i) & key_id,conn,1,1
        if err.number <> 0 then
            response.write "数据库出错"
        else
         if resbuff.RecordCount>0 then
        response.Redirect("../public/error.asp?strerror=" & str_error)
            end if
        end if
    resbuff.close
 next
 set resbuff=nothing
end if   
  conn.execute sql(0)

end sub

人员行为规范检测:YOLOv8+C#实现工厂车间安全监控,违规即报警零延迟 该方案通过YOLOv8的装备检测与姿态估计的动作识别,结合C#的实时管控能力,实现了从“被动巡检”到“主动预警”的转变。相比传统人工,违规响应速度提升10倍,全年可减少90%以上的安全隐患。方案已在3家制造企业落地,支持自定义违规规则(如新增“吸烟”“未系安全带”),可根据车间场景灵活扩展。需要完整的模型训练配置文件(含数据集增强脚本)或C#系统源码(视频处理+报警模块)的,评论区扣“SafetyDetect”,可直接获取部署版本~ 阅读详情

相关推荐

3 种 VLA 模型动作表示方案对比:RT-2 离散化 vs π0 流匹配 vs HybridVLA 混合架构

本文深入对比了三种VLA模型动作表示方案:RT-2离散化、π0流匹配和HybridVLA混合架构。分析了各自的技术原理、优势与局限性,并提供了应用场景选择指南,帮助研究者在具身智能领域做出更优的技术选型决策。

weixin_29031161的博客 319

服务器搜索文件名,loops - 搜索包含服务器名称和扩展名的文件的文件夹,然后选择上次修改的文件,并在文件名中获取日期 - 堆栈内存溢出...

尝试使用VBScript执行此操作。 我有一个文件夹,其中包含多个文件,其中包含扩展名为.vib的服务器名称。 所有文件都显示为servername.vm-T.vib例如:SERVERNAME.vm-255622016-08-31T040037.vib我需要做的是获取包含servername * .vib的所有文件,然后找到该列表的最后修改文件,然后从该文件中提取日期。 日期采用xxxx-x...

weixin_34688110的博客 317

2026四款AI原生IDE实测:Trae、Qoder、CodeBuddy、Cursor能力边界深度解析

AI原生IDE正从代码编辑器演进为开发者智能工作流中枢,其核心在于对上下文理解、AST编辑意图建模与多模态任务调度的工程化实现。区别于传统插件式AI辅助,真正的AI原生IDE需具备知识库嵌入、符号图索引、操作链固化等底层能力,从而支撑Figma转码、N+1查询修复、跨语言迁移等复杂场景。Trae强调中文语境与企业规范的强绑定,Qoder聚焦AST级编辑轨迹预测,CodeBuddy通过IDE/插件/CLI三态划分控制权边界,Cursor则以云端Agent实现开发任务的时空并行。本文基于真实项目压测,揭示免费版

ctk87443的博客 2454

ADO 对象2

广东信息科技职业培训学院 广信IT学院 技术文献总结装订册 文献目录 顺序 文献编号 文献类型 题目 开发工具 关键技术 01 专题技术文献 ADO Recordset(记录集) ...

KobeBranty的博客 204

【技术实践指南】Python解析FactSet Revere供应链数据:构建企业级断裂与重构监测指标

本文提供了一份企业级Python实践指南,详细解析如何利用FactSet Revere供应链数据库,构建供应链断裂与重构监测指标。内容涵盖数据清洗、关系对筛选、时间序列处理及核心指标(断裂、恢复、转移)的工程化实现,旨在帮助数据工程师与分析师搭建自动化、可解释的供应链风险监控系统。

weixin_29051811的博客 927

【EPICS学习记录】根据官方教程创建一个IOC应用

参照官网给出的IOC创建教程逐步操作完成了一个IOC应用的创建,官网教程中有部分过程表述的不清晰,自己摸索之后完成了IOC的创建,并把流程记录下来。其中有一些操作不是很理解,有问题或者建议欢迎指正。

yifeng_H的博客 3661

RecordSet的属性和方法 [摘]

   为了更精确地跟踪数据,要用RecordSet组件创建包含数据的游标,游标就是储存在内存中的数据:  rs = Server.CreateObject("ADODB.RecordSet")  rs.Open(sqlStr,conn,1,A)  注:A=1表示读取数据;A=3表示新增、修改或删除数据。  在RecordSet组件中,常用的属性和方法有:  rs.Fie

Kevin Wu的专栏 1620

基于表面肌电信号sEMG的手势识别——以Ninapro DB1数据集使用CNN网络识别为例

本文实验采用公共数据集Ninapro。该数据集数据量大,采集的动作丰富,每个单位数据集里面包括表面肌电信号、加速度计、手部运动学和动态数据等,记录了67名完整受试者和11名进行了至少50 次手部运动的截肢者的数据。NinaproDB1数据集包括27名完整的受试者(7 名女性和20名男性,其中2个左手和25 个右手) 的肌电信号。信号采集频率为100Hz。

树下一朵云的博客 2295

ASP多行多列显示代码

<table width="98%" border="0" align="center"> <tr> <% Set rs= Server.CreateObject("ADODB.Recordset") rs.open "s elect * from links where link_type=1 order by id asc",conn,1,1 ...

weixin_33913377的博客 164

突破Cloudflare 5秒盾:Python爬虫+GPT分析JS混淆,零基础也能爬

传统突破Cloudflare 5秒盾的门槛极高,需要精通JS逆向、浏览器指纹伪造、行为模拟,而本文的“Playwright+GPT”方案,彻底降低了门槛——无需懂逆向、无需手动改指纹、无需写复杂JS代码,只需3步就能突破大部分网站的防护。低门槛:新手1小时内就能上手,无需逆向工程知识;高成功率:覆盖80%+的普通防护网站,15%的中等防护网站;易扩展:适配不同类型网站,可结合代理、打码平台升级为高可用系统。

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 1163

dolphinscheduler服务注册中心源码解析(一)服务注册与发现整体设计

下一篇文章我们开始讲解dolphinscheduler基于Zookeeper实现注册中心的源码解析。

最爱嫣夜来 375

vba2

[code="java"] Const adVarChar = 200 Const MaxCharacters = 40000 Const ForReading = 1 Const ForWriting = 2 Set DataList = CreateObject("ADOR.Recordset") DataList.Fields.Append ""filed_name"", adV...

wentise的博客 355

SAP_SD模块深度解析SAP信用检查中的“未清数量”取值逻辑

确认数量 vs 订单数量:如果系统配置了可用性检查(ATP),并且订单只确认了部分数量,信用检查通常只占用已确认数量的额度(具体取决于信用组的配置)。在SAP中,未清订单数量的计算并非简单读取订单行项目的目标数量(VBAK-KWMENG),而是基于**计划行(Schedule Lines)**层级来汇总的。状态的转换点:当交货单创建(VL01N)并保存时,这部分数量对应订单的“未清订单数量”减少,“未清交货数量”增加。业务人员眼中的未清数量很简单:“我卖了100个,发了30个,未清就是70个”。

我小时候很黑的博客 309

编写一个含二级目录的源码(Asp+JavaScript)

********************** (一) 打开记录集,创建数组,把记录集的值赋给数组. Dim countset Rs=server.createobject("adodb.recordset")Sql = "select * from BookBoard order by ClassId desc"Rs.open Sql,cn,1,1%>var onecount;onecount=0

[年少莽撞] 1782

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

asp数组的使用

定义简单数组 有两种方法在asp中定义和初始化数组,让我们看看每种的例子: 方法一: MyArray = Array(“Jan”,“Feb”,“Mar”,“Apr”,“May”,“Jun”,“Jul”,“Aug”,“Sep”,“Oct”, “Nov”,“Dec”) 数组大小由初始化元素个数决定。 方法二: Dim myArray(2) '指定数组大小 myArray(0)=“Jan” myArray(1)=“Feb” 数组动态扩展 DIM myArray() REDIM myArray(20) '将数组大小

pegasus827的博客 2133

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

asp中利用数组实现数据库记录的批量录入方法

asp中利用数组实现数据库记录的批量录入方法(原创)演示:http://www.zwtd.com/1/yanek/n/needdj2.asprem 文章题目 asp中利用数组实现数据库记录的批量录入方法(原创)作者:yanek联系email:aspboy@263.net%> 包括两个文件1。allneeddj.asp:实现表单的生成2. allneeddjresult.asp 处理表单批量

欧阳东杰的技术博客 1704

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

asp数组使用

在ASP编程中使用数组数组的定义Dim MyArrayMyArray = Array(1,5,123,12,98)可扩展数组Dim MyArray()for i = 0 to 10ReDim Preserve MyArray(i)MyArray(i)=inext将一个字符串分割并返回分割结果的数组Dim MyArrayMyArray = Split(tempcnt,chr(13)&chr(10))

天涯 书塾 3242

ASP对数据库的操作方法

ASP与数据库-连接、写入、修改、删除、显示代码属性与方法         PageCount 属性: 决定 Recordset 对象包括多少“页”的数据。        这里的“页”是数据记录的集合,大小等于 PageSize 属性的设定,即使最后一页的记录数比 PageSize 的值少,最后一页也算是 PageCount 的一页。必须注意也并不是所有的数据提供者都支持此项属性。  

霸气工作室 9963

[ASP]使用RecordSet对象的GetRows方法(返回而为数组)和RS.MaxRecords(指定记录集的最大容量)

写ASP程序时,一般情况总是使用的VBScript,不过也不只是这一种选择,也可以用JScript。但在用JScript作为ASP的语言时,比用VBScript有一些小小的不方便,比如RecordSet的GetRows方法。在ASP中操作数据库,一般都要用到RecordSet对象,如果注重程序效率的话,可能就会用到RecordSet对象的GetRows方法,把记录集对象转换成数组,而操作数组在

Rock 4430

asp中如何向数组添加值

它可以在浏览器的地址栏中显示传输的值。.asp文件不可以直接用网页查看,在你自己的计算机上可以安装一个iis,具体的安装方法你可以在百度上搜索,但是必须要有windows安装盘才可以。这些数据,每一条与每一条之间,要设置好间隔符号,第一条的每一项之间也要设置好间隔符 后台,处理通过ajax获取到的数据,把获取到的数据,拆分成一条条的记录,得到一个数组,然后开始循环添加数据。

aoxiangchina的博客 462

ASP操作数据库的函数库

 ... *====================================== * 名称:useDb.asp * 功能:数据库操作函数库 * 作者:intereye * 信箱:inteye@163.com * 主页:http://www.inteye.net * BLOG:http://blog.csdn.net/intereye *===============

海水正蓝 859

asp访问数据量大的数据库优化方法

<br />在ASP中优化数据库处理 <br /><br />ASP是一个WEB服务器端的开发环境,它提供了一种简单易学的脚本(VBScript或Jscript),并带有许多内置的对象,从而提供了一条简捷的编程之路。更为重要的是,ASP中提供了ADO对象,让程序员可以轻松操作各种数据库,从而可以产生和运行动态的、交互的WEB服务应用程序。目前,国内很多电子商务站点都采用了ASP技术来与数据库交互,为用户提供各类服务。 <br />由于电子商务站点的大部分信息都存放在数据库中,要提高WEB的响应速度,建立高性

Mis_lixiaoli的专栏 1162

ASP操作数据库的类

<!--google_ad_client = "pub-4490194096475053";/* 内容页,300x250,第一屏 */google_ad_slot = "3685991503";google_ad_width = 300;google_ad_height = 250;// -->先简单介绍一下俺这个类的一些特点: 1.可同时操作多个不同类型的

管子(zero)的杂乱空间 1895

ASP对数据库执行函数,利用数组处理.

插入记录=========================function SqlInsert(ITableName,IFileldb,IDataBase) For i = Lbound(IFileldb) to Ubound(IFileldb)  If i    If IFileldb(i+1)     IFileldbS = IFileldbS & IFileldb(i) & ","  

zhuoweimeng的专栏 408
上一篇: asp编写连接数据库的select下拉框函数
下一篇: 效率比较高的抽题算法(asp考试系统)
firstaking
博客等级 码龄25年 5粉丝 25原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值