· 8 years ago · Aug 13, 2018, 10:10 PM
1import sqlite3
2conn = sqlite3.connect(':memory:')
3c = conn.cursor()
4c.execute("create table test(testcolumn)")
5c.execute("insert into test values('helloooo')")
6conn.commit()
7conn.close()
8
9import sqlite3
10conn = sqlite3.connect(':memory:')
11c = conn.cursor()
12c.execute("select * from test")
13
14Traceback (most recent call last):
15 File "<pyshell#5>", line 1, in <module>
16 q = c.execute("select * from test")
17sqlite3.OperationalError: no such table: test
18
19conn = sqlite3.connect('file::memory:?cache=shared')
20
21#/bin/bash
22rm -f /dev/shm/test.db
23time bash -c $'
24FILE=/dev/shm/test.db
25sqlite3 $FILE "create table if not exists tab(id int);"
26sqlite3 $FILE "insert into tab values (1),(2)"
27for i in 1 2 3 4; do sqlite3 $FILE "INSERT INTO tab (id) select (a.id+b.id+c.id)*abs(random()%1e7) from tab a, tab b, tab c limit 5e5"; done; #inserts at most 2'000'000 records to db.
28sqlite3 $FILE "select count(*) from tab;"'
29
30FILE=/dev/shm/test.db
31real 0m0.927s
32user 0m0.834s
33sys 0m0.092s
34
35FILE=/tmp/test.db
36real 0m2.309s
37user 0m0.871s
38sys 0m0.138s
39
40xterm -hold -e 'sqlite3 /dev/shm/testbin "create table tab(id int); insert into tab values (42),(1337);"' &
41xterm -hold -e 'sqlite3 /dev/shm/testbin "insert into tab values (43),(1338); select * from tab;"' &
42;