欢迎来到可可资源网 免费分享实用的学习资源及技术教程  技术爱好者的栖息之地
✌可可资源网✌
当前位置:首页 > 易语言源码 > 正文

巧用类_ODBC数据库解决外部数据库sqlserver查询慢超时的问题

编辑:可可日期:2021-09-17 17:02:13浏览:1400分类:易语言源码下载地址

大家好,最近在研究公司里的畅捷通T+系统,里面的质检入库功能,想单独做一个读取每天入库产量的工具,最后发现数据库里的3个数据表即可实现 ST_RDRecord 单据信息表 , ST_RDRecord_b 入库记录信息表 , AA_Inventory 物料信息表。

数据表知道了,接下来就是写代码实现了,最开始用的是 外部数据库 ,代码写好,发现一个很严重的问题,因为数据量太庞大,查询非常慢,需要几十秒或者几分钟才能完成查询,这样严重导致 外部数据库 查询不出来,最后经过测试,外部数据库的超时时间是15秒, 换成 数据库连接,也是不行,这2种方法,都不能自主设置超时时间。

不经意间,看到 精益模块自带的有个 类_ODBC数据库 ,并且他有设置超时时间的功能,所以,代码就换成类_ODBC数据库,测试成功了,今天呢,分享给大家。

(本文关键词:适用于百度收录,让更多的人解决该问题。sqlserver查询超时,sqlserver数据库连接超时,sqlserver查询慢,外部数据库查询超时,连接外部数据库查询超时,类_ODBC数据库,类_ODBC数据库用法,类_ODBC数据库怎么读取记录,类_ODBC数据库怎么循环读取记录,类_ODBC数据库咋用,类_ODBC数据库设置超时,类_ODBC数据库查询超时,外部数据库设置超时时间,易语言外部数据库,外部数据1超时失败)

另外在分享给大家一个多表查询和as用法的知识点,因为我多年来只会简单的select,也因为这次的研究,才学会了sql高级用法里的一项

sql =“select b.code as billcode,c.code,c.name,c.specification,a.quantity,a.InvBarCode,a.priuserdefnvc1,a.priuserdefnvc2,a.createdtime from ST_RDRecord_b as a,ST_RDRecord as b,AA_Inventory as c where a.idRDRecordDTO=b.id and a.idinventory=c.id and a.createdtime between '2021-09-01 00:00:00' and '2021-09-03 23:59:59'”

这是3表联合查询的一个用法,要是以往,我可能需要嵌套循环,取一个数据 在查另外的表,用上面的语句,发现就是快捷。

此次案例数据 来源于 畅捷通T+ ,并根据保密性,将所有数据变动,改成一个案例分享给大家,并且由于畅捷通T+是用的sql数据库, 为了分享给大家,特意将案例数据做成mdb格式

案例里有2种查询方法, 类_ODBC数据库和 外部数据库

因为只是案例,并且只做了很少的数据在mdb里,所以,查询是非常快的,但是这个案例主要还是侧重,大型数据查询慢,查询超时,其他方法都实现不了,只能用 类_ODBC数据库 来实现。

另外,类_ODBC数据库 怎么循环读取记录和跳出循环,他本身没有一个非常好的命令,大家可以看我的操作,怎么巧妙利用死循环来读取所有记录

另外,本案例又用到了 超级列表框 同规格内容 合并,并且产量累加的 算法, 我之前分享过一个历程

本案例,代码里都有详细的解释,非常适合初学者

所有源码和mdb会一块打包上传

引用模块

源码文件名模块文件名
类_ODBC数据库使用案例.e
精易模块.ec

引用支持库

源码文件名支持库文件名支持库标识
类_ODBC数据库使用案例.e系统核心支持库 5.7d09f2340818511d396f6aaf844c7e325
多线程支持库 2.05F99C1642A2F4e03850721B4F5D7C3F8
扩展界面支持库一 2.027bb20fdd3e145e4bee3db39ddd6e64c
特殊功能支持库 3.1A512548E76954B6E92C21055517615B0

下载地址

转载:感谢您对可可资源网网站平台的认可,以及对我们原创作品以及文章资源的青睐,非常欢迎各位朋友分享到个人站长或者朋友圈,但转载请说明文章出处“来源可可资源网”。https://www.100keke.cn/eyuyan/13683.html