3. Records

Queries return records. The Record class works like a Hash, but is more than that. Here's the basic usage:


require 'jw/dbi'

db = JW::DBI::Database.new()

db.open(db: 'foods.db', driver: 'QSQLITE')

query.exec 'select * from foods'

# Get record 10
record = query[10]

assert record.isEmpty? == false
assert record.isNull?(0) == true
assert record.fieldName(0) == 'name'
assert record.indexOf('name') == 0
assert record.has_key?('name') == true
assert record.has_key?('notacolumn') == false

# Iterate over keys:
record.keys.each do |k|
  puts "key = #{k}"
end

# Iterate over values:
record.values.each do |v|
  puts "value = #{v}"
end