blob: b19592116490b871efe15f89ac749aed61a53f83 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
|
require 'sqlite'
print('initialize sqlite')
sqlite.initialize()
print('this is sqlite ' .. sqlite.libversion() .. ' (' ..
sqlite.libversion_number() .. ')')
print('sourceid ' .. sqlite.sourceid())
db, state = sqlite.open('db.sqlite',
sqlite.OPEN_READWRITE + sqlite.OPEN_CREATE)
if state ~= sqlite.OK then
print('db open failed')
else
err = db:exec('create table test (name varchar(32))')
if err ~= sqlite.OK then
print('table creation failed')
print('error code ' .. db:errcode() .. ' msg ' .. db:errmsg())
end
db:exec("insert into test values('Balmer')")
stmt = db:prepare("insert into test values(:name)")
print('statement has ' .. stmt:bind_parameter_count() .. ' parameters')
print('param 1 name: ' .. stmt:bind_parameter_name(1))
print('param name is at index ' .. stmt:bind_parameter_index('name'))
stmt:bind(1, 'Hardmeier')
stmt:step()
stmt:reset()
stmt:bind(1, 'Keller')
stmt:step()
stmt:finalize()
s2 = db:prepare('select name from test')
while s2:step() == sqlite.ROW do
print('name = ' .. s2:column(1))
end
s2:finalize()
stmt = db:prepare('drop table testx')
stmt:step()
stmt:finalize()
db:close()
end
print('shutdown sqlite')
sqlite.shutdown()
|