1+ -- Create a user with necessary privileges
2+ CREATE USER 'repl_user '@' %' IDENTIFIED BY ' good_password' ;
3+
4+ -- Grant replication client privilege
5+ GRANT REPLICATION SLAVE, REPLICATION CLIENT ON * .* TO ' repl_user' @' %' ;
6+
7+ -- Grant access to the specific database
8+ GRANT ALL PRIVILEGES ON powersync.* TO ' repl_user' @' %' ;
9+
10+ -- Apply changes
11+ FLUSH PRIVILEGES;
12+
13+ CREATE TABLE lists (
14+ id CHAR (36 ) NOT NULL DEFAULT (UUID()), -- String UUID (36 characters)
15+ created_at VARCHAR (50 ) NULL ,
16+ name TEXT NOT NULL ,
17+ owner_id CHAR (36 ) NOT NULL ,
18+ PRIMARY KEY (id)
19+ );
20+
21+ CREATE TABLE todos (
22+ id CHAR (36 ) NOT NULL DEFAULT (UUID()), -- String UUID (36 characters)
23+ created_at VARCHAR (50 ) NULL ,
24+ completed_at VARCHAR (50 ) NULL ,
25+ description TEXT NOT NULL ,
26+ completed BOOLEAN NOT NULL DEFAULT FALSE,
27+ created_by CHAR (36 ) NULL ,
28+ completed_by CHAR (36 ) NULL ,
29+ list_id CHAR (36 ) NOT NULL ,
30+ PRIMARY KEY (id),
31+ FOREIGN KEY (list_id) REFERENCES lists (id) ON DELETE CASCADE
32+ );
33+
34+ INSERT INTO lists (id, name, owner_id)
35+ VALUES
36+ (UUID(), ' Do a demo' , UUID());
0 commit comments