module Db2Query::SqlStatement

Public Instance Methods

db2_spec_sql() click to toggle source
# File lib/db2_query/sql_statement.rb, line 17
def db2_spec_sql
  iud_sql? ? iud_spec_sql : sql
end
delete_sql?() click to toggle source
# File lib/db2_query/sql_statement.rb, line 5
def delete_sql?
  sql.match?(/delete/i)
end
insert_sql?() click to toggle source
# File lib/db2_query/sql_statement.rb, line 9
def insert_sql?
  sql.match?(/insert/i)
end
iud_sql?() click to toggle source
# File lib/db2_query/sql_statement.rb, line 13
def iud_sql?
  sql.match?(/insert into|update|delete/i)
end
table_name() click to toggle source
# File lib/db2_query/sql_statement.rb, line 21
def table_name
  insert_sql? ? sql.split("INTO ").last.split(" ").first : nil
end

Private Instance Methods

iud_spec_sql() click to toggle source
# File lib/db2_query/sql_statement.rb, line 30
def iud_spec_sql
  "SELECT * FROM #{delete_sql? ? "OLD" : "NEW"} TABLE (#{sql})"
end
new_keys(raw_sql) click to toggle source
# File lib/db2_query/sql_statement.rb, line 26
def new_keys(raw_sql)
  raw_sql.scan(/\$\S+/).map { |key| key.gsub!(/[$=,)]/, "").to_sym }
end