expenses-pq.sql 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. create sequence seqExpenseTypesID;
  2. create table ExpenseTypes (
  3. etID bigint not null default nextval('seqExpenseTypesID'),
  4. etName varchar(50) not null,
  5. etDescription varchar(100) not null,
  6. etMaxAmount decimal(10,2),
  7. etCost decimal(10,2) default 1,
  8. etActive boolean not null default true
  9. );
  10. create sequence seqUsersID;
  11. create table Users (
  12. uID bigint not null default nextval('seqUsersID'),
  13. uLogin varchar(50) not null,
  14. uFullName varchar(100) not null,
  15. uPassword varchar(100) not null,
  16. uActive boolean not null default true
  17. );
  18. create sequence seqProjectsID;
  19. create table Projects (
  20. pID bigint not null default nextval('seqProjectsID'),
  21. pName varchar(50) not null,
  22. pDescription varchar(100) not null,
  23. pActive boolean not null default true
  24. );
  25. create sequence seqExpenseID;
  26. drop table Expenses;
  27. create table Expenses (
  28. eID bigint not null default nextval('seqExpenseID'),
  29. eUserFK bigint not null,
  30. eProjectFK bigint not null,
  31. eTypeFK bigint not null,
  32. eAmount decimal(10,2) not null,
  33. eDate date not null default 'today',
  34. eComment varchar(1024)
  35. );
  36. alter table ExpenseTypes add constraint pkExpenseTypes primary key (etID);
  37. alter table Users add constraint pkUsers primary key (uID);
  38. alter table Projects add constraint pkProjects primary key (pID);
  39. alter table Expenses add constraint pkExpenses primary key (eID);