From: Chris Hall Date: 2009-03-21T02:50:54+09:00 Subject: ruby-odbc and OUTPUT params not working connecting to an SQLExpress database to run a stored procedure, and output parameters are not working. If anyone has any help they can give, it would be greatly appreciated. require 'rubygems' require 'odbc' # CREATE PROCEDURE dbo.up_TestSP4(@NotUsed INT, @ReturnVar INT OUTPUT) # AS # SET @ReturnVar = 666 # /* # DECLARE @P2 INT # EXEC dbo.up_TestSP4 10, @P2 OUTPUT # SELECT @P2 # */ # Error: # 2000 (8162) [FreeTDS][SQL Server]The formal parameter "@P2" was not # declared as an OUTPUT parameter, but the actual parameter passed in # requested output. # odbc_test.rb:26:in `execute' begin conn = ODBC::Database.connect("dsn", "xxx", "xxx") stmt = conn.prepare("exec dbo.up_TestSP4 ?, ?") stmt.param_iotype(1, ODBC::SQL_PARAM_OUTPUT) stmt.param_output_type(1, ODBC::SQL_INTEGER) stmt.param_output_size(1, 4) res = stmt.execute(1, nil) out_value = stmt.param_output_value(1) puts "#{out_value}" rescue Exception => e puts e puts e.backtrace.join("\n") ensure stmt.cancel if stmt conn.disconnect if conn && conn.connected? end -- Posted via http://www.ruby-forum.com/.