【发布时间】:2014-05-07 08:42:05
【问题描述】:
我正在使用 Ruby on Rails 和 NuoDB 开发一个应用程序,并且我正在尝试从数据库中调用过程。我正在使用 Rails 控制台对其进行测试,但是当我使用以下命令调用它时,我只会得到“TRUE”响应。
ActiveRecord::Base.connection.execute("CALL SHOW_FEEDBACKS_PRC( 'form_name' )")
我的存储过程是这样的:
CREATE PROCEDURE database_name.show_feedbacks_prc (IN P_IN_form string)
returns tmp_feedbacks (txt1 string, rating integer, comment string, created_at timestamp, updated_at timestamp)
language sql
security invoker
as
insert into tmp_feedbacks
select txt1, rating, comment, created_at, updated_at
from database_name.feedbacks
where form = p_in_form;
END_PROCEDURE
这是一个简单的查询,仅返回特定“表单”下的“反馈”列表。
当我使用 NuoDB 的控制台时,该过程有效,它返回一个显示请求数据的表,但是当我使用 Rail 的控制台调用它时,它只会在我执行 SQL 命令时返回“真”响应。
是否有可能以请求数据数组的形式获得响应?我该怎么做?
我正在尝试在数据库中执行程序,而不是在 rails 控制器中创建循环。
【问题讨论】:
-
凹凸。还有 11 个字符。
-
你好,蒂姆,我忘记了这个问题。我已经发布了一个答案,以防有人需要。
标签: sql ruby-on-rails ruby stored-procedures nuodb