X-Git-Url: https://git.ktnx.net/?a=blobdiff_plain;f=app%2Fsrc%2Fmain%2Fres%2Fraw%2Fcreate_db.sql;h=625826727ef24bb929102a1e7b7e76f2829ef6b5;hb=32ef1438acbd5328433be04668362402e26095cb;hp=96a5bf433cb2b625c8683b197de91efbe5c5aa60;hpb=e28b8296d155c404cc5a702b3b477c41915d73dc;p=mobile-ledger.git diff --git a/app/src/main/res/raw/create_db.sql b/app/src/main/res/raw/create_db.sql index 96a5bf43..62582672 100644 --- a/app/src/main/res/raw/create_db.sql +++ b/app/src/main/res/raw/create_db.sql @@ -39,14 +39,33 @@ create table profiles( create table accounts(profile varchar not null, name varchar not null, name_upper varchar not null, level integer not null, parent_name varchar, expanded integer not null default 1, amounts_expanded integer not null default 0, generation integer not null default 0, primary key(profile, name)); create table options(profile varchar not null, name varchar not null, value varchar, primary key(profile, name)); -create table account_values(profile varchar not null, account varchar not null, currency varchar not null default '', value decimal not null, generation integer default 0 ); -create unique index un_account_values on account_values(profile,account,currency); -create table description_history(description varchar not null primary key, description_upper varchar, generation integer default 0); -create unique index un_description_history on description_history(description_upper); -create table transactions(profile varchar not null, id integer not null, data_hash varchar not null, year integer not null, month integer not null, day integer not null, description varchar not null, comment varchar, generation integer default 0); -create unique index un_transactions_id on transactions(profile,id); +create table account_values( + profile varchar not null, + account varchar not null, + currency varchar not null default '', + value real not null, + generation integer not null default 0, + primary key(profile, account, currency)); + +create table description_history(description varchar collate NOCASE not null, + description_upper varchar not null, + generation integer not null default 0, + primary key(description)); + +create table transactions( + profile varchar not null, + id integer not null, + data_hash varchar not null, + year integer not null, + month integer not null, + day integer not null, + description varchar collate NOCASE not null, + comment varchar, + generation integer not null default 0, + primary key(profile,id)); create unique index un_transactions_data_hash on transactions(profile,data_hash); create index idx_transaction_description on transactions(description); + create table transaction_accounts(profile varchar not null, transaction_id integer not null, order_no integer not null, account_name varchar not null, currency varchar not null default '', amount decimal not null, comment varchar, generation integer default 0, constraint fk_transaction_accounts_acc foreign key(profile,account_name) references accounts(profile,name), constraint fk_transaction_accounts_trn foreign key(profile, transaction_id) references transactions(profile,id)); create unique index un_transaction_accounts_order on transaction_accounts(profile, transaction_id, order_no); create table currencies(id integer not null primary key, name varchar not null, position varchar not null, has_gap integer not null);