-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathdb_scheme.py
65 lines (57 loc) · 1.7 KB
/
db_scheme.py
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
54
55
56
57
58
59
60
61
62
63
tbl_lus = """
CREATE TABLE tbl_lus (
lus_id INTEGER PRIMARY KEY AUTOINCREMENT,
lus TEXT UNIQUE
)
"""
tbl_field = """
CREATE TABLE tbl_field (
field_id INTEGER PRIMARY KEY AUTOINCREMENT,
field TEXT UNIQUE
)
"""
tbl_tag = """
CREATE TABLE tbl_tag (
tag_id INTEGER PRIMARY KEY AUTOINCREMENT,
sess_id INT,
lus_id INT,
field_id INT,
tagvalue TEXT,
ranges TEXT,
FOREIGN KEY(lus_id) REFERENCES tbl_lus(lus_id),
FOREIGN KEY(sess_id) REFERENCES tbl_lus(lus_id),
FOREIGN KEY(field_id) REFERENCES tbl_field(field_id)
);
"""
tbl_doc = """
CREATE TABLE tbl_doc (
doc_id INTEGER PRIMARY KEY AUTOINCREMENT,
doc_text TEXT
)
"""
tbl_sess = """
CREATE TABLE tbl_sess (
sess_id INTEGER PRIMARY KEY AUTOINCREMENT,
timestamp TEXT,
sess_key TEXT UNIQUE,
doc_id INT,
userName TEXT
);
"""
tbl_seg = """
CREATE TABLE tbl_seg (
seg_id INTEGER PRIMARY KEY AUTOINCREMENT,
doc_id INTEGER,
sess_id INTEGER,
segments TEXT,
FOREIGN KEY(doc_id) REFERENCES tbl_doc(doc_id),
FOREIGN KEY(sess_id) REFERENCES tbl_sess(sess_id)
);
"""
idx_lus_lus = "CREATE INDEX idx_lus_lus ON tbl_lus(lus);"
idx_field_field = "CREATE INDEX idx_field_field ON tbl_field(field);"
idx_tag_sess = "CREATE INDEX idx_tag_sess ON tbl_tag(sess_id);"
idx_tag_lu = "CREATE INDEX idx_tag_lu ON tbl_tag(lus_id);"
idx_tag_tag = "CREATE INDEX idx_tag_tag ON tbl_tag(field_id);"
idx_seg_sess = "CREATE INDEX idx_seg_sess ON tbl_seg(sess_id);"
idx_sess_sessKey = "CREATE INDEX idx_sess_sessKey ON tbl_sess(sess_key);"