Text · 1085 bytes Raw Blame History
1 CREATE TABLE users (
2 id SERIAL PRIMARY KEY,
3 <<<<<<< HEAD
4 username VARCHAR(50) NOT NULL UNIQUE,
5 email VARCHAR(255) NOT NULL UNIQUE,
6 password_hash VARCHAR(255) NOT NULL,
7 =======
8 username VARCHAR(100) NOT NULL UNIQUE,
9 email VARCHAR(200) NOT NULL UNIQUE,
10 password_hash CHAR(60) NOT NULL,
11 >>>>>>> feature/bcrypt
12 created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
13 updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
14 );
15
16 CREATE TABLE posts (
17 id SERIAL PRIMARY KEY,
18 user_id INTEGER REFERENCES users(id),
19 <<<<<<< HEAD
20 title VARCHAR(200) NOT NULL,
21 content TEXT NOT NULL,
22 published BOOLEAN DEFAULT FALSE,
23 =======
24 title VARCHAR(255) NOT NULL,
25 content TEXT,
26 status VARCHAR(20) DEFAULT 'draft',
27 >>>>>>> feature/post-status
28 created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
29 );
30
31 <<<<<<< HEAD
32 CREATE INDEX idx_users_username ON users(username);
33 CREATE INDEX idx_posts_user_id ON posts(user_id);
34 =======
35 CREATE INDEX idx_users_email ON users(email);
36 CREATE INDEX idx_posts_user_published ON posts(user_id, published);
37 >>>>>>> feature/indexes
38