gpt4 book ai didi

ruby - 如何从 DataMapper::Collection 获取原始 SQL?

转载 作者:数据小太阳 更新时间:2023-10-29 08:32:57 24 4
gpt4 key购买 nike

我使用的是最新版本的 postgresql、ruby 和 datamapper。

我这样创建一个查询:

collection = Entry.all(:id => 2..4, :text => /test/)

collection 是一个 DataMapper::Collection 对象。只需调用 query = collection.query 即可获取 DataMapper::Query 对象。但是,如何将查询的原始 SQL 作为字符串获取?

我需要它,因为我必须自定义原始 SQL(我需要 SELECT DISTINCT 而不仅仅是 SELECT),但我不想完整地编写 SQL由我自己,因为我不确定我是否可以编写一个安全查询。

我也很乐意以另一种方式归档我的目标,我愿意接受全新的建议;)

最佳答案

这似乎不太容易实现,但这是一种 hackish 解决方案

collection = Entry.all(:id => 2..4, :text => /test/)

query = collection.query

DataMapper.repository.adapter.send(:select_statement,query)

关于ruby - 如何从 DataMapper::Collection 获取原始 SQL?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14660345/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com