version 1.1.2.7, 2011/11/28 16:59:28
|
version 1.2.2.1, 2012/02/01 14:53:13
|
Line 1
|
Line 1
|
PRAGMA foreign_keys=ON; |
PRAGMA foreign_keys=ON; |
BEGIN TRANSACTION; |
BEGIN TRANSACTION; |
CREATE TABLE IF NOT EXISTS Online ( |
CREATE TABLE IF NOT EXISTS Online ( |
Username varchar(64) not null, | ConnID varchar(23) not null primary key, |
| Username varchar(12) not null, |
RemoteHost varchar(64) not null, |
RemoteHost varchar(64) not null, |
RemotePort smallint unsigned not null, | WillFlag tinyint not null, |
| WillTopic text, |
| WillMsg text, |
| WillQoS tinyint, |
| WillRetain tinyint, |
Stamp timestamp); |
Stamp timestamp); |
CREATE TABLE IF NOT EXISTS Topics ( |
CREATE TABLE IF NOT EXISTS Topics ( |
id integer not null primary key, |
id integer not null primary key, |
|
MsgID smallint unsigned not null, |
|
QoS char not null, |
Retain char not null, |
Retain char not null, |
Topic varchar(255) not null, |
Topic varchar(255) not null, |
Value text, |
Value text, |
Line 14 PubUser varchar(64) not null,
|
Line 21 PubUser varchar(64) not null,
|
PubDate datetime not null, |
PubDate datetime not null, |
PubHost varchar(64) not null, |
PubHost varchar(64) not null, |
Stamp timestamp); |
Stamp timestamp); |
CREATE INDEX IF NOT EXISTS RemoteHost on Online (RemoteHost); | CREATE TABLE IF NOT EXISTS Subscribes ( |
CREATE INDEX IF NOT EXISTS Username on Online (Username); | id integer not null primary key, |
CREATE UNIQUE INDEX IF NOT EXISTS User on Online (Username, RemoteHost); | MsgID smallint unsigned not null, |
CREATE INDEX IF NOT EXISTS PubDate on Topics (PubDate); | QoS char not null, |
CREATE INDEX IF NOT EXISTS PubHost on Topics (PubHost); | Topic varchar(255) not null, |
CREATE INDEX IF NOT EXISTS PubUser on Topics (PubUser); | PubUser varchar(64) not null, |
CREATE INDEX IF NOT EXISTS Topic on Topics (Topic); | PubDate datetime not null, |
| PubHost varchar(64) not null, |
| Stamp timestamp); |
| CREATE INDEX IF NOT EXISTS online_RemoteHost on Online (RemoteHost); |
| CREATE INDEX IF NOT EXISTS online_Username on Online (Username); |
| CREATE INDEX IF NOT EXISTS topics_PubDate on Topics (PubDate); |
| CREATE INDEX IF NOT EXISTS topics_PubHost on Topics (PubHost); |
| CREATE INDEX IF NOT EXISTS topics_PubUser on Topics (PubUser); |
| CREATE INDEX IF NOT EXISTS topics_MsgID on Topics (MsgID); |
| CREATE INDEX IF NOT EXISTS topics_Topic on Topics (Topic); |
| CREATE INDEX IF NOT EXISTS subscribes_PubDate on Subscribes (PubDate); |
| CREATE INDEX IF NOT EXISTS subscribes_PubHost on Subscribes (PubHost); |
| CREATE INDEX IF NOT EXISTS subscribes_PubUser on Subscribes (PubUser); |
| CREATE INDEX IF NOT EXISTS subscribes_MsgID on Subscribes (MsgID); |
| CREATE INDEX IF NOT EXISTS subscribes_Topic on Subscribes (Topic); |
CREATE TRIGGER IF NOT EXISTS Online_update_t AFTER UPDATE ON Online |
CREATE TRIGGER IF NOT EXISTS Online_update_t AFTER UPDATE ON Online |
BEGIN |
BEGIN |
UPDATE Online SET Stamp = strftime('%s', 'now') WHERE Username = old.Username; | UPDATE Online SET Stamp = strftime('%s', 'now') WHERE ConnID = old.ConnID; |
END; |
END; |
CREATE TRIGGER IF NOT EXISTS Online_insert_t AFTER INSERT ON Online |
CREATE TRIGGER IF NOT EXISTS Online_insert_t AFTER INSERT ON Online |
BEGIN |
BEGIN |
UPDATE Online SET Stamp = strftime('%s', 'now') WHERE Username = new.Username; | UPDATE Online SET Stamp = strftime('%s', 'now') WHERE ConnID = new.ConnID; |
END; |
END; |
CREATE TRIGGER IF NOT EXISTS Topics_update_t AFTER UPDATE ON Topics |
CREATE TRIGGER IF NOT EXISTS Topics_update_t AFTER UPDATE ON Topics |
BEGIN |
BEGIN |
Line 36 END;
|
Line 57 END;
|
CREATE TRIGGER IF NOT EXISTS Topics_insert_t AFTER INSERT ON Topics |
CREATE TRIGGER IF NOT EXISTS Topics_insert_t AFTER INSERT ON Topics |
BEGIN |
BEGIN |
UPDATE Topics SET Stamp = strftime('%s', 'now') WHERE id = new.id; |
UPDATE Topics SET Stamp = strftime('%s', 'now') WHERE id = new.id; |
|
END; |
|
CREATE TRIGGER IF NOT EXISTS Subscribes_update_t AFTER UPDATE ON Subscribes |
|
BEGIN |
|
UPDATE Subscribes SET Stamp = strftime('%s', 'now') WHERE id = old.id; |
|
END; |
|
CREATE TRIGGER IF NOT EXISTS Subscribes_insert_t AFTER INSERT ON Subscribes |
|
BEGIN |
|
UPDATE Subscribes SET Stamp = strftime('%s', 'now') WHERE id = new.id; |
END; |
END; |
COMMIT; |
COMMIT; |