Class: JDBCHelper::Connection::ParameterizedStatement Abstract
- Inherits:
-
Object
- Object
- JDBCHelper::Connection::ParameterizedStatement
- Defined in:
- lib/jdbc-helper/connection/parameterized_statement.rb
Overview
This class is abstract.
Direct Known Subclasses
Instance Attribute Summary collapse
-
#java_obj ⇒ Object
readonly
Underlying Java object.
-
#sql ⇒ String
readonly
SQL string.
Instance Method Summary collapse
- #close ⇒ NilClass
- #closed? ⇒ Boolean
-
#initialize(conn, sql, obj) ⇒ ParameterizedStatement
constructor
A new instance of ParameterizedStatement.
- #set_param(idx, param) ⇒ Object
Constructor Details
#initialize(conn, sql, obj) ⇒ ParameterizedStatement
Returns a new instance of ParameterizedStatement.
18 19 20 21 22 |
# File 'lib/jdbc-helper/connection/parameterized_statement.rb', line 18 def initialize(conn, sql, obj) @conn = conn @sql = sql @java_obj = obj end |
Instance Attribute Details
#java_obj ⇒ Object (readonly)
Underlying Java object
14 15 16 |
# File 'lib/jdbc-helper/connection/parameterized_statement.rb', line 14 def java_obj @java_obj end |
#sql ⇒ String (readonly)
SQL string
11 12 13 |
# File 'lib/jdbc-helper/connection/parameterized_statement.rb', line 11 def sql @sql end |
Instance Method Details
#close ⇒ NilClass
45 46 47 48 |
# File 'lib/jdbc-helper/connection/parameterized_statement.rb', line 45 def close @java_obj.close @java_obj = nil end |
#closed? ⇒ Boolean
51 52 53 |
# File 'lib/jdbc-helper/connection/parameterized_statement.rb', line 51 def closed? @java_obj.nil? end |
#set_param(idx, param) ⇒ Object
24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 |
# File 'lib/jdbc-helper/connection/parameterized_statement.rb', line 24 def set_param(idx, param) if setter = (JDBCHelper::Connection::SETTER_MAP[param.class] || JDBCHelper::Connection::SETTER_MAP[param.class.to_s]) case setter when :setNull return @java_obj.send setter, idx, java.sql.Types::NULL when :setBinaryStream return @java_obj.send setter, idx, param.getBinaryStream, param.length when :setTimestamp if param.kind_of?(Time) return @java_obj.send setter, idx, java.sql.Timestamp.new(param.to_i * 1000) end end @java_obj.send setter, idx, param else @java_obj.set_string idx, param.to_s end end |