version 1.1, 2011/11/23 00:47:50
|
version 1.2, 2012/01/27 15:05:38
|
Line 0
|
Line 1
|
|
PRAGMA foreign_keys=ON; |
|
BEGIN TRANSACTION; |
|
CREATE TABLE IF NOT EXISTS Online ( |
|
ConnID varchar(23) not null primary key, |
|
Username varchar(12) not null, |
|
RemoteHost varchar(64) not null, |
|
WillFlag tinyint not null, |
|
WillTopic text, |
|
WillMsg text, |
|
WillQoS tinyint, |
|
WillRetain tinyint, |
|
Stamp timestamp); |
|
CREATE TABLE IF NOT EXISTS Topics ( |
|
id integer not null primary key, |
|
MsgID smallint unsigned not null, |
|
QoS char not null, |
|
Retain char not null, |
|
Topic varchar(255) not null, |
|
Value text, |
|
PubUser varchar(64) not null, |
|
PubDate datetime not null, |
|
PubHost varchar(64) not null, |
|
Stamp timestamp); |
|
CREATE INDEX IF NOT EXISTS RemoteHost on Online (RemoteHost); |
|
CREATE INDEX IF NOT EXISTS Username on Online (Username); |
|
CREATE INDEX IF NOT EXISTS PubDate on Topics (PubDate); |
|
CREATE INDEX IF NOT EXISTS PubHost on Topics (PubHost); |
|
CREATE INDEX IF NOT EXISTS PubUser on Topics (PubUser); |
|
CREATE INDEX IF NOT EXISTS MsgID on Topics (MsgID); |
|
CREATE INDEX IF NOT EXISTS Topic on Topics (Topic); |
|
CREATE TRIGGER IF NOT EXISTS Online_update_t AFTER UPDATE ON Online |
|
BEGIN |
|
UPDATE Online SET Stamp = strftime('%s', 'now') WHERE ConnID = old.ConnID; |
|
END; |
|
CREATE TRIGGER IF NOT EXISTS Online_insert_t AFTER INSERT ON Online |
|
BEGIN |
|
UPDATE Online SET Stamp = strftime('%s', 'now') WHERE ConnID = new.ConnID; |
|
END; |
|
CREATE TRIGGER IF NOT EXISTS Topics_update_t AFTER UPDATE ON Topics |
|
BEGIN |
|
UPDATE Topics SET Stamp = strftime('%s', 'now') WHERE id = old.id; |
|
END; |
|
CREATE TRIGGER IF NOT EXISTS Topics_insert_t AFTER INSERT ON Topics |
|
BEGIN |
|
UPDATE Topics SET Stamp = strftime('%s', 'now') WHERE id = new.id; |
|
END; |
|
COMMIT; |