Let's collect more data.

This commit is contained in:
Alexandr
2019-01-09 23:18:19 +03:00
parent 7e7a4e3cc6
commit 62ad832396
3 changed files with 57 additions and 5 deletions

View File

@ -1,5 +1,51 @@
BEGIN TRANSACTION;
--- CREATE TABLE `word` (
--- `id` INTEGER PRIMARY KEY AUTOINCREMENT,
--- `word` TEXT UNIQUE
--- );
--- CREATE TABLE sqlite_sequence(name,seq);
--- CREATE TABLE `user` (
--- `id` INTEGER NOT NULL UNIQUE,
--- `username` TEXT NOT NULL,
--- `first_name` TEXT NOT NULL,
--- `last_name` TEXT NOT NULL,
--- `date` INTEGER NOT NULL,
--- PRIMARY KEY(`id`)
--- );
--- CREATE TABLE `conf` (
--- `id` NUMERIC NOT NULL UNIQUE,
--- `title` TEXT,
--- `date` INTEGER NOT NULL,
--- PRIMARY KEY(`id`)
--- );
--- CREATE TABLE `xxx_message` (`id` INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT, `text` TEXT UNIQUE NULL);
--- CREATE TABLE IF NOT EXISTS "relations" (
--- `id` INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
--- `word_id` INTEGER NOT NULL,
--- `user_id` INTEGER NOT NULL,
--- `conf_id` INTEGER NOT NULL,
--- `msg_id` INTEGER NOT NULL,
--- `date` INTEGER NOT NULL,
--- FOREIGN KEY(`word_id`) REFERENCES `word`(`id`) ON DELETE CASCADE,
--- FOREIGN KEY(`user_id`) REFERENCES `user`(`id`),
--- FOREIGN KEY(`conf_id`) REFERENCES `conf`(`id`)
--- );
--- CREATE TABLE `reset` (
--- `id` INTEGER PRIMARY KEY AUTOINCREMENT,
--- `user_id` INTEGER,
--- `conf_id` INTEGER,
--- `date` INTEGER,
--- `relation_id` INTEGER,
--- FOREIGN KEY(`user_id`) REFERENCES `user`(`id`)
--- );
--- CREATE TABLE `alert` (
--- `conf_id`TEXT NOT NULL,
--- `user_id`TEXT NOT NULL,
--- `created`TEXT NOT NULL,
--- `time`TEXT NOT NULL,
--- `message`TEXT
--- );
CREATE TABLE `word` (
`id` INTEGER PRIMARY KEY AUTOINCREMENT,
`word` TEXT UNIQUE
@ -24,7 +70,7 @@ CREATE TABLE IF NOT EXISTS "relations" (
`word_id` INTEGER NOT NULL,
`user_id` INTEGER NOT NULL,
`conf_id` INTEGER NOT NULL,
`date` INTEGER NOT NULL,
`date` INTEGER NOT NULL, `msg_id` INTEGER NULL,
FOREIGN KEY(`word_id`) REFERENCES `word`(`id`) ON DELETE CASCADE,
FOREIGN KEY(`user_id`) REFERENCES `user`(`id`),
FOREIGN KEY(`conf_id`) REFERENCES `conf`(`id`)
@ -44,4 +90,5 @@ CREATE TABLE `alert` (
`time`TEXT NOT NULL,
`message`TEXT
);
CREATE TABLE `xxx_message` (`id` INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT, `text`TEXT UNIQUE NULL);
COMMIT;

View File

@ -89,15 +89,20 @@ class DataBase:
)
self.execute(sql)
def add_relation(self, word, user_id, conf_id):
def add_relation(self, word, user_id, conf_id, text):
word_id = self.save_word(word)
date = int(dt.datetime.now().strftime("%s"))
sql2 = "INSERT OR IGNORE INTO xxx_message('text') VALUES ('%s')" % text
self.execute(sql2)
sql3 = "SELECT id FROM `xxx_message` WHERE text = '%s'" % text
msg_id = self.execute(sql3)[0][0]
sql = """INSERT OR IGNORE INTO
relations('word_id', 'user_id', 'conf_id', 'date')
VALUES ('%s','%s','%s','%s')""" % (
relations('word_id', 'user_id', 'conf_id', 'msg_id', 'date')
VALUES ('%s','%s','%s','%s', '%s')""" % (
word_id,
user_id,
conf_id,
msg_id,
date
)
self.execute(sql)

View File

@ -248,7 +248,7 @@ class MessageWorker:
self.db.add_conf(chat_id, chat_title)
for word in collection:
self.db.add_relation(word=word, user_id=user_id, conf_id=chat_id)
self.db.add_relation(word=word, user_id=user_id, conf_id=chat_id, text=text)
def clean_text(self, s):
file = open(self.stop_words, 'rt')