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
(also: #java)
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.
19 20 21 22 23 |
# File 'lib/jdbc-helper/connection/parameterized_statement.rb', line 19 def initialize(conn, sql, obj) @conn = conn @sql = sql @java_obj = obj end |
Instance Attribute Details
#java_obj ⇒ Object (readonly) Also known as: java
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
57 58 59 60 |
# File 'lib/jdbc-helper/connection/parameterized_statement.rb', line 57 def close @java_obj.close @java_obj = nil end |
#closed? ⇒ Boolean
63 64 65 |
# File 'lib/jdbc-helper/connection/parameterized_statement.rb', line 63 def closed? @java_obj.nil? || @java_obj.isClosed end |
#set_param(idx, param) ⇒ Object
25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 |
# File 'lib/jdbc-helper/connection/parameterized_statement.rb', line 25 def set_param(idx, param) case param when NilClass set_null idx, param when Fixnum @java_obj.setLong idx, param when Bignum @java_obj.setString idx, param.to_s # Safer when BigDecimal @java_obj.setBigDecimal idx, param.to_java when String @java_obj.setString idx, param when Float @java_obj.setDouble idx, param when Time @java_obj.setTimestamp idx, Java::java.sql.Timestamp.new((param.to_f * 1000).to_i) when Java::java.sql.Date @java_obj.setDate idx, param when Java::java.sql.Time @java_obj.setTime idx, param when Java::java.sql.Timestamp @java_obj.setTimestamp idx, param when Java::java.sql.Blob @java_obj.setBinaryStream idx, param.getBinaryStream#, param.length when Java::java.io.InputStream @java_obj.setBinaryStream idx, param else @java_obj.setString idx, param.to_s end end |