From f3c4ae704d4f1b54376aeacc6a7a94f2470c5c19 Mon Sep 17 00:00:00 2001 From: David Date: Fri, 7 Sep 2018 08:13:54 -0700 Subject: [PATCH 1/5] initial commit: add queries.sql file --- queries.sql | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 queries.sql diff --git a/queries.sql b/queries.sql new file mode 100644 index 0000000..e69de29 From c797543c3971e24749652abe8def5666aeb5beb5 Mon Sep 17 00:00:00 2001 From: David Date: Fri, 7 Sep 2018 09:12:58 -0700 Subject: [PATCH 2/5] created all tables --- queries.sql | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/queries.sql b/queries.sql index e69de29..bdd6f07 100644 --- a/queries.sql +++ b/queries.sql @@ -0,0 +1,30 @@ +PRAGMA foreign_keys = ON; + +CREATE TABLE organization ( + id INTEGER PRIMARY KEY AUTOINCREMENT, + name VARCHAR(128) +); + +CREATE TABLE channel ( + id INTEGER PRIMARY KEY AUTOINCREMENT, + name VARCHAR(128), + organization_id INTEGER REFERENCES organization(id) +); + +CREATE TABLE user ( + id INTEGER PRIMARY KEY AUTOINCREMENT, + name VARCHAR(64) +); + +CREATE TABLE channel_user ( + id INTEGER PRIMARY KEY AUTOINCREMENT, + channel_id INTEGER REFERENCES channel(id), + user_id INTEGER REFERENCES user(id) +); + +CREATE TABLE message ( + id INTEGER PRIMARY KEY AUTOINCREMENT, + content TEXT, + timestamp DATE DEFAULT (datetime('now', 'localtime')) + channel_user_id INTEGER REFERENCES channel_user(id) +); From 8d68f490ca949d75acd1636215c775e92c23f3af Mon Sep 17 00:00:00 2001 From: David Date: Fri, 7 Sep 2018 10:25:25 -0700 Subject: [PATCH 3/5] implemented INSERT queries --- queries.sql | 31 ++++++++++++++++++++++++++++++- 1 file changed, 30 insertions(+), 1 deletion(-) diff --git a/queries.sql b/queries.sql index bdd6f07..8449a2f 100644 --- a/queries.sql +++ b/queries.sql @@ -14,6 +14,8 @@ CREATE TABLE channel ( CREATE TABLE user ( id INTEGER PRIMARY KEY AUTOINCREMENT, name VARCHAR(64) + organization_id INTEGER REFERENCES organization(id) + ); CREATE TABLE channel_user ( @@ -24,7 +26,34 @@ CREATE TABLE channel_user ( CREATE TABLE message ( id INTEGER PRIMARY KEY AUTOINCREMENT, - content TEXT, + content VARCHAR(2056) NOT NULL, timestamp DATE DEFAULT (datetime('now', 'localtime')) channel_user_id INTEGER REFERENCES channel_user(id) + channel_id INTEGER REFERENCES channel(id) ); + + +INSERT INTO organization (name) VALUES ("Lambda School"); + +INSERT INTO channel (name, organization_id) VALUES ("#general", 1); +INSERT INTO channel (name, organization_id) VALUES ("#random", 1); + +INSERT INTO user (name, organization_id ) VALUES ("Alice", 1); +INSERT INTO user (name, organization_id ) VALUES ("Bob", 1); +INSERT INTO user (name, organization_id ) VALUES ("Chris", 1); + +INSERT INTO channel_user (channel_id, user_id) VALUES (1,1); +INSERT INTO channel_user (channel_id, user_id) VALUES (2,1); +INSERT INTO channel_user (channel_id, user_id) VALUES (1,2); +INSERT INTO channel_user (channel_id, user_id) VALUES (2,3); + +INSERT INTO message (content, channel_id, user_id) VALUES ("Alice's post in #general", 1, 1); +INSERT INTO message (content, channel_id, user_id) VALUES ("Alice's post in #random", 2, 1); +INSERT INTO message (content, channel_id, user_id) VALUES ("Alice's post in #general again", 1, 1); +INSERT INTO message (content, channel_id, user_id) VALUES ("Bob's post in #random", 2, 2); +INSERT INTO message (content, channel_id, user_id) VALUES ("Bob's post in #general", 1, 2); +INSERT INTO message (content, channel_id, user_id) VALUES ("Bob's post in #general again", 1, 2); +INSERT INTO message (content, channel_id; user_id) VALUES ("Alice's second post in #random again", 2, 1); +INSERT INTO message (content, channel_id, user_id) VALUES ("Chris' first post in #random", 2, 3); +INSERT INTO message (content, channel_id, user_id) VALUES ("Chris' post in #general", 1, 3); +INSERT INTO message (content, channel_id, user_id) VALUES ("Chris' second post in #random", 2, 3); \ No newline at end of file From 2372755935f1895d9f1f4014d2786f0fea8525b1 Mon Sep 17 00:00:00 2001 From: David Date: Fri, 7 Sep 2018 11:30:45 -0700 Subject: [PATCH 4/5] MVP-implemented SELECT queries and answer to item 6 question --- queries.db | Bin 0 -> 5120 bytes queries.sql | 82 +++++++++++++++++++++++++++++++++++++++++++++++----- 2 files changed, 74 insertions(+), 8 deletions(-) create mode 100644 queries.db diff --git a/queries.db b/queries.db new file mode 100644 index 0000000000000000000000000000000000000000..200dece42aecee1983d10bd3498e1ebccca11a88 GIT binary patch literal 5120 zcmeHLzfZzI6uw_b3Yxev5R*#?2@M#dE{;}mA`uWvHDMwZPHX}t6j*SAzsbRW$3!+4 zb#wAsXmSu843p$ua_!f?_wK&?+IP9Oc3pCYoZk1mu05p3fB*==DWw1aO|*z;p}0`##xC`*+VliD$HroV#Q(wX40xzEE{H>Ua~qhZmg?fMI@J5#mWVdVX~BAvU6s# zN}koit}{+cpNIQQ8b8PSEgo&84bd>&;ZjN&%(7e^S7&e}rEE{uBpgN&%(7W+||X za2kgDH-Gm<;t(gpJ7`}2Gk`zvY_le=W}_5P3Iqzo5dldp<=Jkl*WHE$>}jbsce!VG sf^T#D3h Date: Fri, 7 Sep 2018 15:35:51 -0700 Subject: [PATCH 5/5] refactored for cleaner code: changed SELECT queries --- queries.db | Bin 5120 -> 0 bytes queries.sql | 71 ++++++++++++++++++++++++---------------------------- 2 files changed, 33 insertions(+), 38 deletions(-) delete mode 100644 queries.db diff --git a/queries.db b/queries.db deleted file mode 100644 index 200dece42aecee1983d10bd3498e1ebccca11a88..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5120 zcmeHLzfZzI6uw_b3Yxev5R*#?2@M#dE{;}mA`uWvHDMwZPHX}t6j*SAzsbRW$3!+4 zb#wAsXmSu843p$ua_!f?_wK&?+IP9Oc3pCYoZk1mu05p3fB*==DWw1aO|*z;p}0`##xC`*+VliD$HroV#Q(wX40xzEE{H>Ua~qhZmg?fMI@J5#mWVdVX~BAvU6s# zN}koit}{+cpNIQQ8b8PSEgo&84bd>&;ZjN&%(7e^S7&e}rEE{uBpgN&%(7W+||X za2kgDH-Gm<;t(gpJ7`}2Gk`zvY_le=W}_5P3Iqzo5dldp<=Jkl*WHE$>}jbsce!VG sf^T#D3h