PR for #3 #17

Merged
flecomte merged 7 commits from #3 into master 2019-07-26 14:30:44 +02:00
2 changed files with 37 additions and 0 deletions
Showing only changes of commit e3daf16035 - Show all commits

View File

@@ -0,0 +1,4 @@
drop trigger generate_version_number_trigger on article;
drop table article;
drop function generate_version_number(regclass, uuid);
drop function set_version_number();

View File

@@ -0,0 +1,33 @@
create or replace function generate_version_number(tablename regclass, version_id uuid) returns int
language plpgsql as
$$
begin
return random(); -- TODO
end;
$$;
create or replace function set_version_number() returns trigger
language plpgsql as
$$
begin
new.version_number = generate_version_number(TG_TABLE_NAME::regclass, new.version_id);
end;
$$;
create table article
(
id uuid default uuid_generate_v4() not null,
version_id uuid default uuid_generate_v4() not null,
version_number int not null,
title text not null,
annonymous boolean default false not null,
content text not null,
description text,
tags varchar(32)[] default '{}' not null,
created_at timestamptz default now() not null
);
CREATE TRIGGER generate_version_number_trigger
BEFORE INSERT
ON article
EXECUTE PROCEDURE set_version_number();