Skip to content

Database Schema

vernfongchao edited this page Mar 14, 2022 · 9 revisions

Schema

Tables

users

column name data type details
id integer not null, primary key
email string not null, indexed, unique
username string not null, max_length: 40, indexed, unique
hashed_password string not null
created_at datetime not null
updated_at datetime not null
  • Index on email, unique: true
  • Index on username, unique: true

images

column name data type details
id integer not null, primary key
image string not null
summary string not null
user_id integer not null, foreign key
created_at datetime not null
updated_at datetime not null
  • user_id references users Table

comments

column name data type details
id integer not null, primary key
content string not null
user_id integer not null, foreign key
image_id integer not null, foreign key
created_at datetime not null
updated_at datetime not null
  • user_id references users Table
  • image_id references images Table

likes

column name data type details
id integer not null, primary key
user_id integer not null, foreign key
image_id integer not null, foreign key
created_at datetime not null
updated_at datetime not null
  • user_id references users Table
  • image_id references images Table

follows

column name data type details
id integer not null, primary key
target_id integer not null, foreign key
user_id integer not null, foreign key
created_at datetime not null
updated_at datetime not null
  • target_id references users Table
  • user_id references users Table

Clone this wiki locally