如何实现ADO测试程序
发表于:2025-11-13 作者:千家信息网编辑
千家信息网最后更新 2025年11月13日,这篇文章将为大家详细讲解有关如何实现ADO测试程序,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。原来在Sql Server及Oracle上操作时,执行完成后直接把连
千家信息网最后更新 2025年11月13日如何实现ADO测试程序
这篇文章将为大家详细讲解有关如何实现ADO测试程序,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
原来在Sql Server及Oracle上操作时,执行完成后直接把连接关闭了。返回的参数想怎么处理就怎么处理,并不会出错,注意使用COM交互操作访问ADO的数据将极大的降低性能。
不知道这里有多少人用Sybase做数据库开发的,我是有点受不了了。用了ADO测试程序,冲破重重阻力,终于系统算是正常运行了,要做更进一步的处理:增加数据权限。我们原来是在Sql Server上用函数直接返回的结果集来判断的。
但是Sybase不支持函数,只好用存储过程返回一个判断权限的条件字符串动态执行。问题是取出输出参数总提提示"Command has been closed"。奇怪啊,明明执行的时候是Open了Connection了。写了一个ADO测试程序:
AseConnection con = new AseConnection("Data Source='SYBASE'; Port=5000; UID='sa'; PWD=''; Database='data';Connection Timeout='300';") ; AseCommand com = new AseCommand("GetDataRightSQL", con) ; com.CommandType = System.Data.CommandType.StoredProcedure ; try { AseParameter prm = new AseParameter("@UserID", 1) ; //prm.Direction = System.Data.ParameterDirection.Input ; com.Parameters.Add(prm) ; prm = new AseParameter("@Category","Department") ; com.Parameters.Add(prm) ; com.Parameters.Add(new AseParameter("@FieldName", "Dept_ID")) ; prm = new AseParameter("@returnSql", AseDbType.VarChar, 250) ; prm.Direction = System.Data.ParameterDirection.Output ; com.Parameters.Add(prm) ; con.Open() ; com.ExecuteNonQuery() ; Console.WriteLine(com.Parameters["@returnSql"].Value) ;由于是我们有一个数据层专门处理数据库操作,开始怀疑封装的不好了。检查了N次也不知道在哪出错,ADO测试程序总以为是输出参数类型有问题,试过几次,长度也改过。不行。
后来注意到:跟踪执行的时候执行成功,总是在取参数的时候出错。
再看一下错误信息"Command has been closed",晕!ADO测试程序不会是取参数值的时候要求数据库连接保持Open状态吧? 修改一下测试代码:
AseParameter prm = new AseParameter("@UserID", 1) ; // prm.Direction = System.Data.ParameterDirection.Input ; com.Parameters.Add(prm) ; prm = new AseParameter("@Category","Department") ; com.Parameters.Add(prm) ; com.Parameters.Add(new AseParameter("@FieldName", "Dept_ID")) ; prm = new AseParameter("@returnSql", AseDbType.VarChar, 250) ; prm.Direction = System.Data.ParameterDirection.Output ; com.Parameters.Add(prm) ; con.Open() ; com.ExecuteNonQuery() ; con.Close() ; //提前关闭数据库 Console.WriteLine(com.Parameters["@returnSql"].Value) ;关于"如何实现ADO测试程序"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。
测试
数据
程序
参数
数据库
时候
处理
篇文章
函数
更多
权限
问题
输出
不行
不错
实用
成功
更进一步
不好
代码
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
比特币服务器是谁运行的
谷歌地图高清卫星地图数据库
能获取论文全文信息的数据库
内部管理软件开发合同
广州电脑软件开发价格
联高软件开发公司怎么样
潜入式软件开发
125开头的服务器
朝阳区企业软件开发多少钱
php点保存后存入数据库
福泉软件开发设计
皇室战争外国服务器
互联网科技助推汽车金融
软件开发企业如何记账
网络安全法的个人信息和重要
广东肇庆dns服务器虚拟主机
网络安全素材黑板报
大数据和网络安全哪个方向
四川学习软件开发排行榜
网站acc数据库怎么建
sql数据库访问设置
afax传真服务器
网络安全专业能在之江实验室
远程访问管理服务器
中科院网络安全待遇
国外研究学生网络安全信息
网络技术发展3条主线
linux高级网络技术
58软件开发靠谱么
数据库的附加步骤