Module: Insert

Included in:
Query
Defined in:
lib/yaml2sql.rb

Instance Method Summary collapse

Instance Method Details

#create_insert_lambda(obj) ⇒ Object



45
46
47
48
49
50
51
52
# File 'lib/yaml2sql.rb', line 45

def create_insert_lambda(obj)
  table = obj['name']
  names = obj['columns'].map{ |x| x["name"] }

  lambda do |*args|
    "insert into #{table} VALUES (#{args.join(",")});"
  end
end

#create_lambdas(obj) ⇒ Object



62
63
64
65
66
67
68
69
70
# File 'lib/yaml2sql.rb', line 62

def create_lambdas(obj)
  obj["tables"].map do |x|
    {
      name: x["name"],
      insert: create_insert_lambda(x),
      select: create_select_id_lambda(x)
    }
  end
end

#create_select_id_lambda(obj) ⇒ Object



54
55
56
57
58
59
60
# File 'lib/yaml2sql.rb', line 54

def create_select_id_lambda(obj)
  table = obj['name']
  select_on = obj['select_on']
  lambda do |key|
    "select id from  #{table} where #{select_on} = #{key};"
  end
end