| 
									
										
										
										
											2019-03-24 21:06:38 +01:00
										 |  |  | CREATE VIRTUAL TABLE note_fulltext USING fts5(noteId UNINDEXED, title, titleHash UNINDEXED, content, contentHash UNINDEXED)
 | 
					
						
							|  |  |  | /* note_fulltext(noteId,title,titleHash,content,contentHash) */;
 | 
					
						
							| 
									
										
										
										
											2017-12-10 22:16:20 -05:00
										 |  |  | CREATE TABLE IF NOT EXISTS "sync" (
 | 
					
						
							| 
									
										
										
										
											2019-03-24 21:06:38 +01:00
										 |  |  |                                     `id`	INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
 | 
					
						
							|  |  |  |                                     `entityName`	TEXT NOT NULL,
 | 
					
						
							|  |  |  |                                     `entityId`	TEXT NOT NULL,
 | 
					
						
							|  |  |  |                                     `sourceId` TEXT NOT NULL,
 | 
					
						
							|  |  |  |                                     `utcSyncDate`	TEXT NOT NULL);
 | 
					
						
							| 
									
										
										
										
											2018-01-31 23:36:39 -05:00
										 |  |  | CREATE TABLE IF NOT EXISTS "source_ids" (
 | 
					
						
							| 
									
										
										
										
											2019-03-24 21:06:38 +01:00
										 |  |  |                                           `sourceId`	TEXT NOT NULL,
 | 
					
						
							|  |  |  |                                           `utcDateCreated`	TEXT NOT NULL,
 | 
					
						
							|  |  |  |                                           PRIMARY KEY(`sourceId`)
 | 
					
						
							| 
									
										
										
										
											2017-12-03 22:29:23 -05:00
										 |  |  | );
 | 
					
						
							| 
									
										
										
										
											2018-01-31 23:36:39 -05:00
										 |  |  | CREATE TABLE IF NOT EXISTS "note_revisions" (
 | 
					
						
							| 
									
										
										
										
											2019-03-24 21:06:38 +01:00
										 |  |  |                                               `noteRevisionId`	TEXT NOT NULL PRIMARY KEY,
 | 
					
						
							|  |  |  |                                               `noteId`	TEXT NOT NULL,
 | 
					
						
							|  |  |  |                                               `title`	TEXT,
 | 
					
						
							|  |  |  |                                               `content`	TEXT,
 | 
					
						
							|  |  |  |                                               `isProtected`	INT NOT NULL DEFAULT 0,
 | 
					
						
							|  |  |  |                                               `utcDateModifiedFrom` TEXT NOT NULL,
 | 
					
						
							|  |  |  |                                               `utcDateModifiedTo` TEXT NOT NULL,
 | 
					
						
							|  |  |  |                                               `dateModifiedFrom` TEXT NOT NULL,
 | 
					
						
							|  |  |  |                                               `dateModifiedTo` TEXT NOT NULL,
 | 
					
						
							|  |  |  |                                               type TEXT DEFAULT '' NOT NULL,
 | 
					
						
							|  |  |  |                                               mime TEXT DEFAULT '' NOT NULL,
 | 
					
						
							|  |  |  |                                               hash TEXT DEFAULT "" NOT NULL);
 | 
					
						
							| 
									
										
										
										
											2018-04-02 22:33:54 -04:00
										 |  |  | CREATE TABLE IF NOT EXISTS "api_tokens"
 | 
					
						
							| 
									
										
										
										
											2018-01-11 00:01:16 -05:00
										 |  |  | (
 | 
					
						
							| 
									
										
										
										
											2018-04-02 22:33:54 -04:00
										 |  |  |   apiTokenId TEXT PRIMARY KEY NOT NULL,
 | 
					
						
							|  |  |  |   token TEXT NOT NULL,
 | 
					
						
							| 
									
										
										
										
											2019-03-24 21:06:38 +01:00
										 |  |  |   utcDateCreated TEXT NOT NULL,
 | 
					
						
							|  |  |  |   isDeleted INT NOT NULL DEFAULT 0,
 | 
					
						
							|  |  |  |   hash TEXT DEFAULT "" NOT NULL);
 | 
					
						
							| 
									
										
										
										
											2018-04-02 22:33:54 -04:00
										 |  |  | CREATE TABLE IF NOT EXISTS "branches" (
 | 
					
						
							| 
									
										
										
										
											2019-03-24 21:06:38 +01:00
										 |  |  |                                         `branchId`	TEXT NOT NULL,
 | 
					
						
							|  |  |  |                                         `noteId`	TEXT NOT NULL,
 | 
					
						
							|  |  |  |                                         `parentNoteId`	TEXT NOT NULL,
 | 
					
						
							|  |  |  |                                         `notePosition`	INTEGER NOT NULL,
 | 
					
						
							|  |  |  |                                         `prefix`	TEXT,
 | 
					
						
							|  |  |  |                                         `isExpanded`	BOOLEAN,
 | 
					
						
							|  |  |  |                                         `isDeleted`	INTEGER NOT NULL DEFAULT 0,
 | 
					
						
							|  |  |  |                                         `utcDateModified`	TEXT NOT NULL,
 | 
					
						
							|  |  |  |                                         utcDateCreated TEXT NOT NULL,
 | 
					
						
							|  |  |  |                                         hash TEXT DEFAULT "" NOT NULL,
 | 
					
						
							|  |  |  |                                         PRIMARY KEY(`branchId`)
 | 
					
						
							| 
									
										
										
										
											2018-01-31 23:36:39 -05:00
										 |  |  | );
 | 
					
						
							| 
									
										
										
										
											2018-06-01 22:26:37 -04:00
										 |  |  | CREATE TABLE IF NOT EXISTS "recent_notes" (
 | 
					
						
							| 
									
										
										
										
											2019-03-24 21:06:38 +01:00
										 |  |  |                                             `branchId` TEXT NOT NULL PRIMARY KEY,
 | 
					
						
							|  |  |  |                                             `notePath` TEXT NOT NULL,
 | 
					
						
							|  |  |  |                                             hash TEXT DEFAULT "" NOT NULL,
 | 
					
						
							|  |  |  |                                             `utcDateCreated` TEXT NOT NULL,
 | 
					
						
							|  |  |  |                                             isDeleted INT
 | 
					
						
							| 
									
										
										
										
											2018-06-13 19:10:28 -04:00
										 |  |  | );
 | 
					
						
							| 
									
										
										
										
											2018-06-01 22:26:37 -04:00
										 |  |  | CREATE TABLE IF NOT EXISTS "event_log" (
 | 
					
						
							| 
									
										
										
										
											2019-03-24 21:06:38 +01:00
										 |  |  |                                          `eventId`	TEXT NOT NULL PRIMARY KEY,
 | 
					
						
							|  |  |  |                                          `noteId`	TEXT,
 | 
					
						
							|  |  |  |                                          `comment`	TEXT,
 | 
					
						
							|  |  |  |                                          `utcDateCreated`	TEXT NOT NULL
 | 
					
						
							| 
									
										
										
										
											2018-06-01 22:26:37 -04:00
										 |  |  | );
 | 
					
						
							|  |  |  | CREATE TABLE IF NOT EXISTS "options"
 | 
					
						
							|  |  |  | (
 | 
					
						
							| 
									
										
										
										
											2018-06-13 19:10:28 -04:00
										 |  |  |   name TEXT not null PRIMARY KEY,
 | 
					
						
							| 
									
										
										
										
											2018-06-01 22:26:37 -04:00
										 |  |  |   value TEXT,
 | 
					
						
							|  |  |  |   isSynced INTEGER default 0 not null,
 | 
					
						
							|  |  |  |   hash TEXT default "" not null,
 | 
					
						
							| 
									
										
										
										
											2019-03-24 21:06:38 +01:00
										 |  |  |   utcDateCreated TEXT not null,
 | 
					
						
							|  |  |  |   utcDateModified TEXT NOT NULL
 | 
					
						
							| 
									
										
										
										
											2018-04-11 00:10:11 -04:00
										 |  |  | );
 | 
					
						
							| 
									
										
										
										
											2019-03-24 21:06:38 +01:00
										 |  |  | CREATE TABLE IF NOT EXISTS "attributes"
 | 
					
						
							| 
									
										
										
										
											2018-07-29 11:47:46 +02:00
										 |  |  | (
 | 
					
						
							| 
									
										
										
										
											2018-08-13 07:57:23 +02:00
										 |  |  |   attributeId      TEXT not null primary key,
 | 
					
						
							|  |  |  |   noteId       TEXT not null,
 | 
					
						
							|  |  |  |   type         TEXT not null,
 | 
					
						
							|  |  |  |   name         TEXT not null,
 | 
					
						
							|  |  |  |   value        TEXT default '' not null,
 | 
					
						
							|  |  |  |   position     INT  default 0 not null,
 | 
					
						
							| 
									
										
										
										
											2019-03-24 21:06:38 +01:00
										 |  |  |   utcDateCreated  TEXT not null,
 | 
					
						
							|  |  |  |   utcDateModified TEXT not null,
 | 
					
						
							| 
									
										
										
										
											2018-08-13 07:57:23 +02:00
										 |  |  |   isDeleted    INT  not null,
 | 
					
						
							| 
									
										
										
										
											2019-03-24 21:06:38 +01:00
										 |  |  |   hash         TEXT default "" not null,
 | 
					
						
							|  |  |  |   isInheritable int DEFAULT 0 NULL);
 | 
					
						
							| 
									
										
										
										
											2018-11-16 14:36:50 +01:00
										 |  |  | CREATE TABLE IF NOT EXISTS "links" (
 | 
					
						
							| 
									
										
										
										
											2019-03-24 21:06:38 +01:00
										 |  |  |                                      `linkId`	TEXT NOT NULL,
 | 
					
						
							|  |  |  |                                      `noteId`	TEXT NOT NULL,
 | 
					
						
							|  |  |  |                                      `targetNoteId`	TEXT NOT NULL,
 | 
					
						
							|  |  |  |                                      `type` TEXT NOT NULL,
 | 
					
						
							|  |  |  |                                      `hash` TEXT DEFAULT "" NOT NULL,
 | 
					
						
							|  |  |  |                                      `isDeleted`	INTEGER NOT NULL DEFAULT 0,
 | 
					
						
							|  |  |  |                                      `utcDateCreated`	TEXT NOT NULL,
 | 
					
						
							|  |  |  |                                      `utcDateModified`	TEXT NOT NULL,
 | 
					
						
							|  |  |  |                                      PRIMARY KEY(`linkId`)
 | 
					
						
							| 
									
										
										
										
											2018-11-16 14:36:50 +01:00
										 |  |  | );
 | 
					
						
							| 
									
										
										
										
											2019-02-20 23:07:57 +01:00
										 |  |  | CREATE TABLE IF NOT EXISTS "note_contents" (
 | 
					
						
							| 
									
										
										
										
											2019-03-24 21:06:38 +01:00
										 |  |  |                                              `noteContentId`	TEXT NOT NULL,
 | 
					
						
							|  |  |  |                                              `noteId`	TEXT NOT NULL,
 | 
					
						
							|  |  |  |                                              `isProtected`	INT NOT NULL DEFAULT 0,
 | 
					
						
							|  |  |  |                                              `content`	TEXT NULL DEFAULT NULL,
 | 
					
						
							|  |  |  |                                              `hash` TEXT DEFAULT "" NOT NULL,
 | 
					
						
							|  |  |  |                                              `utcDateCreated`	TEXT NOT NULL,
 | 
					
						
							|  |  |  |                                              `utcDateModified` TEXT NOT NULL,
 | 
					
						
							|  |  |  |                                              PRIMARY KEY(`noteContentId`)
 | 
					
						
							| 
									
										
										
										
											2019-02-20 23:07:57 +01:00
										 |  |  | );
 | 
					
						
							|  |  |  | CREATE TABLE IF NOT EXISTS "notes" (
 | 
					
						
							| 
									
										
										
										
											2019-03-24 21:06:38 +01:00
										 |  |  |                                      `noteId`	TEXT NOT NULL,
 | 
					
						
							|  |  |  |                                      `title`	TEXT NOT NULL DEFAULT "note",
 | 
					
						
							|  |  |  |                                      `isProtected`	INT NOT NULL DEFAULT 0,
 | 
					
						
							|  |  |  |                                      `type` TEXT NOT NULL DEFAULT 'text',
 | 
					
						
							|  |  |  |                                      `mime` TEXT NOT NULL DEFAULT 'text/html',
 | 
					
						
							|  |  |  |                                      `hash` TEXT DEFAULT "" NOT NULL,
 | 
					
						
							|  |  |  |                                      `isDeleted`	INT NOT NULL DEFAULT 0,
 | 
					
						
							|  |  |  |                                      `dateCreated`	TEXT NOT NULL,
 | 
					
						
							|  |  |  |                                      `dateModified`	TEXT NOT NULL,
 | 
					
						
							|  |  |  |                                      `utcDateCreated`	TEXT NOT NULL,
 | 
					
						
							|  |  |  |                                      `utcDateModified`	TEXT NOT NULL,
 | 
					
						
							|  |  |  |                                      PRIMARY KEY(`noteId`)
 | 
					
						
							| 
									
										
										
										
											2019-02-20 23:07:57 +01:00
										 |  |  | );
 | 
					
						
							| 
									
										
										
										
											2019-03-11 20:36:19 +01:00
										 |  |  | CREATE UNIQUE INDEX `IDX_sync_entityName_entityId` ON `sync` (
 | 
					
						
							| 
									
										
										
										
											2019-03-24 21:06:38 +01:00
										 |  |  |                                                               `entityName`,
 | 
					
						
							|  |  |  |                                                               `entityId`
 | 
					
						
							|  |  |  |   );
 | 
					
						
							|  |  |  | CREATE INDEX `IDX_sync_utcSyncDate` ON `sync` (
 | 
					
						
							|  |  |  |                                             `utcSyncDate`
 | 
					
						
							|  |  |  |   );
 | 
					
						
							| 
									
										
										
										
											2019-03-11 20:36:19 +01:00
										 |  |  | CREATE INDEX `IDX_note_revisions_noteId` ON `note_revisions` (
 | 
					
						
							| 
									
										
										
										
											2019-03-24 21:06:38 +01:00
										 |  |  |                                                               `noteId`
 | 
					
						
							|  |  |  |   );
 | 
					
						
							| 
									
										
										
										
											2019-03-11 20:36:19 +01:00
										 |  |  | CREATE INDEX `IDX_note_revisions_dateModifiedFrom` ON `note_revisions` (
 | 
					
						
							| 
									
										
										
										
											2019-03-24 21:06:38 +01:00
										 |  |  |                                                                         `utcDateModifiedFrom`
 | 
					
						
							|  |  |  |   );
 | 
					
						
							| 
									
										
										
										
											2019-03-11 20:36:19 +01:00
										 |  |  | CREATE INDEX `IDX_note_revisions_dateModifiedTo` ON `note_revisions` (
 | 
					
						
							| 
									
										
										
										
											2019-03-24 21:06:38 +01:00
										 |  |  |                                                                       `utcDateModifiedTo`
 | 
					
						
							|  |  |  |   );
 | 
					
						
							| 
									
										
										
										
											2019-03-11 20:36:19 +01:00
										 |  |  | CREATE INDEX `IDX_branches_noteId` ON `branches` (
 | 
					
						
							| 
									
										
										
										
											2019-03-24 21:06:38 +01:00
										 |  |  |                                                   `noteId`
 | 
					
						
							|  |  |  |   );
 | 
					
						
							| 
									
										
										
										
											2019-03-11 20:36:19 +01:00
										 |  |  | CREATE INDEX `IDX_branches_noteId_parentNoteId` ON `branches` (
 | 
					
						
							| 
									
										
										
										
											2019-03-24 21:06:38 +01:00
										 |  |  |                                                                `noteId`,
 | 
					
						
							|  |  |  |                                                                `parentNoteId`
 | 
					
						
							|  |  |  |   );
 | 
					
						
							| 
									
										
										
										
											2019-03-11 20:36:19 +01:00
										 |  |  | CREATE INDEX IDX_branches_parentNoteId ON branches (parentNoteId);
 | 
					
						
							|  |  |  | CREATE INDEX IDX_attributes_name_value
 | 
					
						
							|  |  |  |   on attributes (name, value);
 | 
					
						
							|  |  |  | CREATE INDEX IDX_links_noteId_index
 | 
					
						
							|  |  |  |   on links (noteId);
 | 
					
						
							|  |  |  | CREATE INDEX IDX_links_targetNoteId_index
 | 
					
						
							|  |  |  |   on links (targetNoteId);
 | 
					
						
							|  |  |  | CREATE INDEX IDX_attributes_name_index
 | 
					
						
							|  |  |  |   on attributes (name);
 | 
					
						
							|  |  |  | CREATE INDEX IDX_attributes_noteId_index
 | 
					
						
							|  |  |  |   on attributes (noteId);
 | 
					
						
							|  |  |  | CREATE INDEX IDX_attributes_value_index
 | 
					
						
							|  |  |  |   on attributes (value);
 | 
					
						
							|  |  |  | CREATE UNIQUE INDEX `IDX_note_contents_noteId` ON `note_contents` (`noteId`);
 |