Sha256: 9e28b4c283ab46e2b1772b92c68da74e53cbe61023f1544cd2425927222035c1
Contents?: true
Size: 1.04 KB
Versions: 86
Compression:
Stored size: 1.04 KB
Contents
module Picky module Backends class SQLite class Array < Basic def create_table db.execute 'create table key_value (key varchar(255), value text);' end def size result = db.execute 'SELECT COUNT(*) FROM key_value' result.first.first.to_i end def []= key, array unless array.empty? db.execute 'INSERT OR REPLACE INTO key_value (key,value) VALUES (?,?)', key.to_s, MultiJson.encode(array) end DirectlyManipulable.make self, array, key array end def [] key res = db.execute "SELECT value FROM key_value WHERE key = ? LIMIT 1", key.to_s array = res.blank? ? [] : MultiJson.decode(res.first.first) DirectlyManipulable.make self, array, key array end def delete key db.execute "DELETE FROM key_value WHERE key = (?)", key.to_s end end end end end
Version data entries
86 entries across 86 versions & 1 rubygems