如何从文本文件读入 SQL 参数[通俗易懂]

如何从文本文件读入 SQL 参数[通俗易懂]有时我们希望把参数列表分行存储在文本文件里,执行SQL时再拼到in函数里,从而查询出符合条件的记录。 但SQL不能解析文本文件,直接拼到in函数里有困难,所以很多人先把文件导入数据库临时表,再用jo…

如何从文本文件读入 SQL 参数

SQL不能解析文本文件,直接拼到in函数里有困难,所以很多人先把文件导入数据库临时表,再用join语句做关联,从而间接实现in函数的功能。但这样一来每当文件变化的时候,都要手工做一遍删表导库的动作,过程还是挺麻烦的。

一劳永逸的做法是用PythonC#等编程语言开发程序,但这类语言技术门槛很高,想学会有点儿难,虽然理论上啥功能都能实现。

如果用esProc,实现这个算法就简单多了,只需短短几行代码:

  A B
1 =file(“params.txt”).import@i() /打开文本文件,按行取参数列表
2 =orcl.query(“select * from T where P in(?)”,A2) /执行SQLA2in函数的参数值

参数列表过长的时候就不能用上面的方法了,因为in函数对成员数量有限制,比如Oracle规定不能超过1000个。遇到这种情况也别担心,esProc支持库外通用查询,且支持长参数列表,代码只需这样写:

  A B
1 =file(“params.txt”).import@i().sort(~) /读取长参数列表并排序
2 =orcl.cursor(“select * from T”) /从库表取出数据
3 =A3.select(A1.contain@b(P)) /查询符合参数列表的记录

 esProc是个脚本语言,可以在桌面IDE里执行并调试,可以连接任意数据库并执行SQL。对于SQL难以实现的功能,esProc通常都有办法简化。

 

这里有优化 SQL 的汇总 集算器优化 SQL 汇总

这里是常用的 esProc 算法 http://doc.raqsoft.com.cn/esproc/coderefer/

esProc 提供了敏捷的语法体系和丰富的结构化类库,可通用地解决 SQL 难题,详情参考http://www.raqsoft.com.cn/wx/sql-solver.html

关于集算器安装使用、获得免费授权和相关技术资料,可以参 如何使用集算器?

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
转载请注明出处: https://daima100.com/8304.html

(0)
上一篇 2023-03-03
下一篇 2023-03-03

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注