storj/pkg/satellite/satellitedb/dbx/satellitedb.dbx

81 lines
1.7 KiB
Plaintext
Raw Normal View History

// dbx.v1 golang satellitedb.dbx .
model user (
key id
unique email
field id blob
field first_name text ( updatable )
field last_name text ( updatable )
field email text ( updatable )
field password_hash blob ( updatable )
field created_at timestamp ( autoinsert )
)
read one (
select user
where user.email = ?
)
read one (
select user
where user.id = ?
)
create user ( )
update user ( where user.id = ? )
delete user ( where user.id = ? )
model project (
key id
field id blob
field name text
field description text ( updatable )
// stores last accepted version of terms of use
field terms_accepted int ( updatable )
field created_at timestamp ( autoinsert )
)
read all ( select project)
read one (
select project
where project.id = ?
)
read all (
select project
join project.id = project_member.project_id
where project_member.member_id = ?
)
create project ( )
update project ( where project.id = ? )
delete project ( where project.id = ? )
model project_member (
key member_id project_id
field member_id user.id cascade
field project_id project.id cascade
field created_at timestamp ( autoinsert )
)
read all (
select project_member
where project_member.project_id = ?
)
read one (
select project_member
where project_member.member_id = ?
)
read limitoffset (
select project_member
where project_member.project_id = ?
)
create project_member ( )
delete project_member (
where project_member.member_id = ?
where project_member.project_id = ?
)