Class: JDBCHelper::ProcedureWrapper

Inherits:
ObjectWrapper show all
Defined in:
lib/jdbc-helper/wrapper/procedure_wrapper.rb

Overview

conn.procedure(:my_procedure).call(1, [“a”, String], Fixnum)

Instance Attribute Summary

Attributes inherited from ObjectWrapper

#connection, #name

Instance Method Summary collapse

Methods inherited from ObjectWrapper

#initialize

Constructor Details

This class inherits a constructor from JDBCHelper::ObjectWrapper

Instance Method Details

#call(*args) ⇒ Hash

Executes the procedure and returns the values of INOUT & OUT parameters in Hash

Returns:

  • (Hash)


16
17
18
19
20
21
22
23
24
# File 'lib/jdbc-helper/wrapper/procedure_wrapper.rb', line 16

def call(*args)
	params = build_params args
	cstmt = @connection.prepare_call "{call #{name}(#{Array.new(@cols.length){'?'}.join ', '})}"
	begin
		process_result( args, cstmt.call(*params) )
	ensure
		cstmt.close
	end
end

#refreshJDBCHelper::ProcedureWrapper

Reloads procedure metadata. Metadata is cached for performance. However, if you have modified the procedure, you need to reload the metadata with this method.



30
31
32
33
# File 'lib/jdbc-helper/wrapper/procedure_wrapper.rb', line 30

def refresh
	@cols = @defaults = nil
	self
end