作者热门文章
- xml - AJAX/Jquery XML 解析
- 具有多重继承的 XML 模式
- .net - 枚举序列化 Json 与 XML
- XML 简单类型、简单内容、复杂类型、复杂内容
我有一个包含大量 SQL 脚本的项目,我正在将该项目迁移到 Sequel .
在旧脚本中,我定义了相当多的 SQL 函数来构建我的查询。我应该如何创建这些函数,以便我可以从 Sequel 访问它们?
例如我有一个 SQL 函数
CREATE FUNCTION my_func(...) RETURNS integer AS $$
SELECT ...
$$ LANGUAGE SQL;
我是否应该将上面的文本包含在一个字符串中并调用以下内容?
DB.run("CREATE FUNCTION my_func(...) RETURNS integer AS $$
SELECT ...
$$ LANGUAGE SQL;")
似乎有更好的方法。
我可以使用 Sequel 将函数本身重写为 ruby 函数,但我不相信这会实现我想要的,因为我想运行使用 WHERE
中的 SQL 查询的查询> 子句等。
谢谢!
最佳答案
Sequel 实际上支持创建 PostgreSQL 函数:
DB.create_function('myfunc', 'SELECT ...', :args=>[:integer, :text], :returns=>:integer)
但是,我很遗憾添加了这个,并且可能会在下一个主要版本中将其移至扩展。将 DB.run
用于像这样的数据库特定内容是 IMO 的方式。
关于sql - 我如何在 Sequel 中创建 SQL 函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13811975/
我是一名优秀的程序员,十分优秀!