QTP访问数据库

读取Access数据库的vbscript代码打包下载 一段用来读取Access数据库的vbscript代码,来自国外的代码,经过脚本之家测试,确实不错。 立即下载

一 、先给一个访问数据库的vbs脚本:

使用的时候只需要调用下面标记为红色的三个函数基本就可以了

'@Description获取检索到数据集
'@Documentation<selectCommandText>查询语句
PublicFunction FillDataTable(ByRef selectCommandText)
 Dimconn

 Set conn = getOleDbConnection()

 Dim cmd

 Set cmd = getOleDbCommandInstance()
 
 cmd.CommandText= selectCommandText
 cmd.Connection= conn
 Dimadapter
 Setadapter = getOleDbDataAdapterInstance()
 
 adapter.SelectCommand= cmd
 Dimdata
 Setdata = getDataTableInstance()

 adapter.Fill(data)

 conn.Close

 Set FillDataTable = data
End Function

'@Description执行一条无返回结果集的Sql语句
'例如Update 、Insert、delete语句
'@Documentation<selectCommandText>查询语句
PublicFunction ExecuteNoQuery(ByRef selectCommandText)

 Dim conn

 Set conn = getOleDbConnection()

 Dim cmd

 Set cmd = getOleDbCommandInstance()
 
 cmd.CommandText= selectCommandText
 cmd.Connection= conn
 '返回影响的行数
 DimresultCount
 resultCount=cmd.ExecuteNonQuery()

 conn.Close
 SetExecuteNoQuery = resultCount
 
End Function

'@Description执行查询,并返回查询所返回的结果集中第一行的第一列。忽略额外的列或行
'例如Select count(*) from student
'@Documentation<selectCommandText>查询语句
PublicFunction ExecuteScalar(ByRef selectCommandText)

 Dim conn

 Set conn = getOleDbConnection()

 Dim cmd

 Set cmd = getOleDbCommandInstance()
 
 cmd.CommandText= selectCommandText
 cmd.Connection= conn
 DimresualtObject
 resualtObject= cmd.ExecuteScalar()

 conn.Close
 ExecuteScalar= resualtObject
 
End Function

'@Description获取OleDbConnection对象
PrivateFunction getOleDbConnection()

 Set conn =DotNetFactory.CreateInstance("System.Data.OleDb.OleDbConnection")
  conn.ConnectionString=Environment.Value("ConnectionString")'我的数据库连接字符串在环境变量里面保存,原型如下:
  'Provider=SQLOLEDB;server=127.0.0.1;database=Northwind;uid=sa;pwd=sa
  conn.Open()

 SetgetOleDbConnection = conn
End Function

'------------------------------------------------------------------------------------------------------------

'@Description获取OleDbCommand的对象实例
PrivateFunction  getOleDbCommandInstance()
 Dimcmd

 Set cmd =DotNetFactory.CreateInstance("System.Data.OleDb.OleDbCommand")
 SetgetOleDbCommandInstance = cmd
End Function

'@Description获取OleDbDataAdapter的对象实例
PrivateFunction  getOleDbDataAdapterInstance()

 Dim adapter
 Setadapter =DotNetFactory.CreateInstance("System.Data.OleDb.OleDbDataAdapter")
 SetgetOleDbDataAdapterInstance = adapter
 
End Function

'@Description获取DataTable的对象实例
PrivateFunction  getDataTableInstance()
 Dimdata
 Setdata = DotNetFactory.CreateInstance("System.Data.DataTable")
 SetgetDataTableInstance = data
End Function

'@Description获取DataSet的对象实例
PrivateFunction  getDataSetInstance()
 Dimdata
 Setdata = DotNetFactory.CreateInstance("System.Data.DataSet")
 SetgetDataTableInstance = data
End Function

我写的这个访问数据库的底层代码主要是用于访问SQLServer数据库和Access数据库,很容易扩展写成专门访问SQLServer数据库或者Oracle数据库的代码,如果搞不明白,可以直接发邮件给我!

二 、再给一个如何调用上述代码的实例:

以SQLServer自带的NorthWind数据库为例,直接在QTP的专家视图里面写的代码,如下:

Dim rowcount

'获取Products表的记录数,这个返回值不是一个对象,所以不能这样写:Set rowcount = ExecuteScalar("SelectCount(*) From Products")
rowcount =ExecuteScalar("Select Count(*) From Products")
msgboxrowcount

Dim dtdata
'获取Products中的所有数据,放到dtdata对象中
Set dtdata =FillDataTable("Select * from Products")

rowcount = dtdata.Rows.Count
Dim i
For i = 0 torowcount -1

'dtdata.Rows.get_Item(i)("ProductName")   获取第i行字段名称为ProductName的内容,
'也可以这样写dtdata.Rows.get_Item(i)(1) 即可以是字段名也可以字段编号
Reporter.ReportEventmicPass,"第"&i&"条记录","ProductName:"&dtdata.Rows.get_Item(Cint(i))("ProductName")&",QuantityPerUnit:"&dtdata.Rows.get_Item(Cint(i))("QuantityPerUnit")
Next

 

下面一个截图是通过QTP提供的Add Watch的功能学习如何使用DataTable中更多的属性和方法!很有用的哦!!

如果发现有什么问题,欢迎指正,共同进步!!!


 调试DataTable对象抓图,很有帮助的哦


 

Seurat3.0小提琴图腰围的参数 小提琴图没有有些群没有出现小提琴只有点点,是由于0值比例太多, 一个关键的参数scale = "width"导致了这种局面,应加上上述参数 ggplot(p$data,aes(ident,CD4)) + geom_violin(scale = "width", adjust =1, trim = TRUE) + geom_jitter()+ theme_bw() adjust参数可以调整腰的粗细,eg: ggplot(p$data,aes(ident,CD4)) + geom_violin(scale 阅读详情

相关推荐

Word中 Go to endnote 出现闪退问题解决办法

Word中 Go to endnote 出现闪退问题解决办法

努力努力努力 1万+

使用VBScript从Access中读取表格数据

第一步:连接Access数据库 <% dim conn,rs set conn = server.createObject("adodb.connection")'声明一个数据库实例 '连接数据库 conn.connectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&Server.MapPath("text.mdb

iceberg_Yao's Blog 1811

深入解析SAP MM模块OBYC自动科目分配机制:从T030表到实战配置

本文深入解析SAP MM模块中OBYC自动科目分配机制,阐明其作为连接物流与财务核心桥梁的作用。文章以T030表为核心,详细拆解其字段结构与检索逻辑,并通过采购收货、生产发料等实战场景,手把手演示配置步骤与关键要点,帮助读者掌握从原理到实践的完整知识体系,实现业财无缝对接。

nft7creator的博客 356

VBS 连接access 数据库

msgbox “完毕”

weixin_44585713的博客 811

自动驾驶中的多传感器融合实战:用卡尔曼滤波搞定毫米波雷达与摄像头航迹对齐

本文深入探讨了自动驾驶中多传感器融合的实战技术,重点介绍了如何使用卡尔曼滤波实现毫米波雷达与摄像头的航迹对齐。通过分析传感器特性差异、时空同步挑战及工程化实现步骤,提供了包括状态向量定义、观测矩阵设计和故障检测机制在内的完整解决方案,最终实现0.15米以内的高精度航迹对齐。

weixin_28728495的博客 410

Informer复现 -- 完整模型

有了数据和核心的ProbAttention,接下来就可以复现完整的Informer(图1)了。图1:Informer模型结构[1]如果对图1还不太熟悉的同学,可以参考图2。由图2可知,informer与Transformer之间的差异并不大。主要区别是ProbAttention和可能的encoder最后一层的conv(源代码中用来distil)。图2:参考Transformer画的Informer模型结构。

AI_daily的博客 3491

VBScript连接数据库函数封装

通过VBScript语言将ADO连接Access、Oracle、Excel、SQL Server数据库封装成函数,便于以后调用,对数据库进行增、删、改、查。

Kayer_Y的博客 521

别再只会用串口助手了!手把手教你用手机App调试HC-05蓝牙模块(STM32F103实战)

本文详细介绍了如何利用手机App调试HC-05蓝牙模块与STM32F103的无线连接,突破传统串口助手的限制。通过实战指南,开发者可以掌握移动性测试、实时监控和快速验证等高效调试技巧,优化蓝牙透传的稳定性和性能。

weixin_33670786的博客 428

VBScript和JavaScript连接数据库(ACCESS)

1.VBScript连接数据库  程序代码 Dim conn,rs,sqlstr Set conn = CreateObject("ADODB.Connection") conn.connectionstring = "provider=microsoft.jet.oledb.4.0;data source=F:/wwroot/mzwu/db1.mdb" conn.open

ZXL工作室 4766

Vue3 - 完美解决html2canvas截图不全问题,截图只截取当前可视区域导出图片不全,截屏导出的图片显示不全只有一部分或缺一块,vue3移动端H5网页项目使用html2canvas插件长截图!

vue3,html2canvas,移动端H5网页,截图不全,html2canvas长截图不全,保存长截图,页面滚动导致截图不全,网页下方截屏不到怎么办,底部一部分无法截屏到,保存的图片少了一大块,H5海报截图不完整,怎么截取滚动条下方的内容,截图图时图片不全,截图图片只有一半的问题,底部内容空白,截图空白问题的解决,截图不全怎么办,html2canvas.js网页截图功能(解决截图不全问题,移动端ios系统截图不完整,html2canvas截图太长又不能删减截取不到,使用HTML2Canvas在H5页面上实

🏆 前端领域优质创作者 1万+

V-Mamba:2D 选择性扫描状态空间模型图像分类

V-Mamba CIFAR-10 分类链路:32² RGB → Stem Conv (3→64ch, stride2→16²) → VMambaBlock ×4 (SS2D 四方向 → Mamba S6 扫描 → MLP) → GAP → Linear → 10 类。核心贡献:SS2D 四方向扫描将 2D 空间建模转为 4 个 1D 序列, 计算复杂度从 O(N²) 降至 O(N)。建议先从 CIFAR-10 dim=64 depth=4 验证 SSM 收敛性;

FJN110的博客 70

QTP访问数据库(推荐)

一 、先给一个访问数据库的vbs脚本:使用的时候只需要调用下面标记为红色的三个函数基本就可以了@Description获取检索到数据集@Documentation查询语句Public Function FillDataTable(ByRef selectCommandText) Dim conn Set conn = getOleDbConnection() Dim cmd

w7822055的专栏 850

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

QTP,以数据库的形式访问Excel

<br />通常,我们与Excel的交互,是通过创建Excel对象的方式:<br />Set ExcelApp = CreateObject("Excel.Application") <br /> <br />但是在需要处理格式规范、数据量大的数据表的时候,不妨采取数据库的操作方式,使得操作更高效、灵活。<br />把Excel表格的第一行作为字段名,其余行作为数据项。<br /> <br />范例代码:<br />'创建连接字符串<br />Function ConnetString(FilePath)<

软件自动化测试专栏 1033

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

VC中sqlite的使用

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

QTP 数据库相关

QTP访问SQL数据库 Dim conn,resSet conn = createobject("adodb.connection")connstr = "Provider=SQLOLEDB.1;Password=Password01!;Persist Security Info=True;User ID=sa;Initial Catalog=PCRM2;Data Source=ws-g...

weixin_30888707的博客 90

SAP B1中文培訓教材_SDK

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

功能自动化测试之QTP编写测试脚本(二)

说明:该篇博客是博主一字一码编写的,实属不易,请尊重原创,谢谢大家! 接着上一篇博客继续往下写 :https://blog.youkuaiyun.com/qq_41782425/article/details/103766798 二、使用 VBScript 处理脚本 6.使用环境变量 6.1 查看内置环境变量 注意 √     内置环境变量区分大小写。 ...

cdtaogang's blog 1万+

qtp,VBScript操作MySQL数据库时,关于多次访问数据库的问题,数据集如何处理

Dim dataset ,sql1,cusimnum Set dataset=createobject("ADODB.RecordSet")'创建数据集 sql1="SELECT openid from IM_SM_CUSTOMER where host_tel='"+hostTel+"' LIMIT 1" dataset.Open sql1,conn,1,1'定义dataset的时候 要用

warmlizhan的专栏 480

VBS/QTP 通过 telnet 数据库授权

功能:想通过vbs脚本实现 telnet到远程计算机,然后执行数据库命令,赋予其它电脑远程访问的权 ---------VBS实现--------------- 说明: 1、只能手动运行vbs实现; 2、通过web调用vbs,或远程到这个vbs脚本的主机时执行vbs,大部分是执行失败的。 ----QTP/UFT、EXCEL可以远程调用,是因为他们开启了DCOM的功能; S

liuxueyi521的专栏 813

QTP连接Oracle

QTP通过ADO访问Oracle数据库的一个例子: Dim rs,sq,pkeyset conn=createobject("adodb.connection")set rs=createobject("adodb.recordset")' 需要安装Oracle客户端conn.open "Provider=OraOLEDB.Oracle.1;Persist Security Info=Fal...

kuwoleft 90

QTP的那些事--web测试脚本不能录制的解决方法(个人整理未完待续)

问题起因:在安装QTP后,正常录制QTP时,不能产生相应的录制脚本,脚本内容为空。 解决方法:QTP在IE中录制脚本是依靠一个叫BHOManager Class的动态链接库来完成的。当这个控件没有被加载,或者被禁用时,就会出现上述症状。于是,解决方法就很简单了,重新加载,或启用这个控件,一切就OK啦。 具体步骤:打开IE,在菜单中选择[工具]/[Internet选项]进入Internet配...

weixin_34010949的博客 352

python访问数据库日志文件_Agent客户端,PYthon相关代码:Config读写\Log日志 \MySQL数据库操作\PYthon启动QTP \FTP客...

在家早上7点就睡不着了,有点失眠。闲着也没事,整理一下。这个Agent.py代码是因上一个项目写的一个客户端的功能,主要实现了:Config读写,Log日志、MySQL数据库操作、PYthon启动QTP、FTP客户端和ZIP打包,main()主要是定时查询MYSQL当得到本机IP对应的任务时,根据计划执行时间得出时间戳。当到达执行时间时调有RunScenario()启动QTP。QTP执行完任...

weixin_39921689的博客 244

QTP汇总比较有价值的脚本

1、Object Spy的Tips Hold the CTRL key to change the window focus or perform other mouse operations   2、QTP为什么无法单步调试? 安装Microsoft Script Debuger即可   3、QTP如何访问Oracle数据库? Dim rs,sq,pkey set conn=cr

erix1991的专栏 6132

mysql对象关闭时不允许操作_qtp:操作mysql数据库时,提示"str open sql.conn对象打开时,不允许操作的解决方法...

在我们写qtp代码连接mysql数据库的时候有可能会遇到一些问题,如图,下面就是我在工作上遇到的一个问题:当遇到这种问题时,我的问题是因为我在循环,而我的数据集对象又在for循环的外面,所以造成在第二次循环的时候提示上面那个错误。解决方法:既然是循环取值,那么数据集的对象的创建就应该写 在for循环里面,数据集的关闭也是如此Dim Conn,str,sqlSet Conn=CreateObject...

weixin_39636718的博客 364

qtp:操作mysql数据库时,提示"str open sql.conn对象打开时,不允许操作的解决方法...

在我们写qtp代码连接mysql数据库的时候有可能会遇到一些问题,如图,下面就是我在工作上遇到的一个问题: 当遇到这种问题时,我的问题是因为我在循环,而我的数据集对象又在for循环的外面,所以造成在第二次循环的时候提示上面那个错误。 解决方法: 既然是循环取值,那么数据集的对象的创建就应该写 在for循环里面,数据集的关闭也是如此 Dim Conn,str,sql Set Conn=...

weixin_33724059的博客 216

QTP连接mysql数据库

参考文档:http://www.cnblogs.com/jiaxiaoai/archive/2011/03/22/1991470.html 1.首先安装mysql数据驱动,qtp在windows系统下操作连接mysql,所以下载mysql-connector-odbc-5.1.8-win32.msi 下载地址:http://mysql.mirrors.pair.com/D...

weixin_34370347的博客 88
上一篇: 怎样用PLSQL连接Oracle数据库
下一篇: QTP破解后打开时报错解决办法
TestSu
博客等级 码龄15年 6粉丝 7原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值