1
0
mirror of https://github.com/vlang/v.git synced 2023-08-10 21:13:21 +03:00
v/vlib/sqlite/sqlite_test.v

33 lines
803 B
V
Raw Normal View History

import sqlite
2019-10-28 10:40:41 +03:00
2019-10-28 00:10:39 +03:00
fn test_sqlite() {
2020-04-21 06:52:44 +03:00
$if !linux {
return
}
2020-06-16 13:23:52 +03:00
db := sqlite.connect(':memory:') or { panic(err) }
2019-11-04 02:38:49 +03:00
db.exec("drop table if exists users")
2019-10-28 11:45:27 +03:00
db.exec("create table users (id integer primary key, name text default '');")
2020-04-21 06:52:44 +03:00
2019-10-28 11:45:27 +03:00
db.exec("insert into users (name) values ('Sam')")
db.exec("insert into users (name) values ('Peter')")
db.exec("insert into users (name) values ('Kate')")
2020-04-21 06:52:44 +03:00
2019-10-28 11:45:27 +03:00
nr_users := db.q_int('select count(*) from users')
assert nr_users == 3
2020-04-21 06:52:44 +03:00
2019-10-28 11:45:27 +03:00
name := db.q_string('select name from users where id = 1')
assert name == 'Sam'
2020-04-21 06:52:44 +03:00
users, mut code := db.exec('select * from users')
2019-10-28 11:45:27 +03:00
assert users.len == 3
assert code == 101
code = db.exec_none('vacuum')
assert code == 101
user := db.exec_one('select * from users where id = 3') or {
panic(err)
}
assert user.vals.len == 2
}