====== FBUtil ====== Tento program umožňuje rychlý import rozsáhlých tabulek. Ovládá se pomocí vlastního skriptovacího jazyka. Nápovědu příkazů lze zjistit příkazem ''help''. ===== Import ceníku z CSV ===== Ukázka importu a aktualizace ceníku (proměnná prostředí např. DATABASE=localhost:/opt/firebird/fdbs/data.fdb) : #Pripojeni databaze cdb data $DATABASE sysdba heslo WIN1250 #klonovani pracovniho ceniku set bail 1 cltbl data rozpocty_cenik v_rozpocty_cenik cmd data create UNIQUE index VROZPOCTY_CENIK_P ON V_ROZPOCTY_CENIK (IDCEN) cmd data create index VROZPOCTY_CENIK_1 ON V_ROZPOCTY_CENIK (IDDRUH) cmd data create index VROZPOCTY_CENIK_2 ON V_ROZPOCTY_CENIK (ObjCis) com data cmd data delete from v_rozpocty_cenik com data #pridani indexu do ceniku #cmd data create index ROZPOCTY_CENIK_9 ON ROZPOCTY_CENIK (ObjCis) com data set bail 0 #Import imp data {file="cenik.csv" separator=";" encoding="WIN1250"} \ insert into v_rozpocty_cenik (idcen, popis, mj, cena, naklady, iddruh, objcis) \ values ('kvn'||\1, \2, \4, \5, \6, 'kvn', \1) info data com data #aktualni datum cmd data update v_rozpocty_cenik set datum=CURRENT_TIMESTAMP com data #update kvn cmd data update rozpocty_cenik d \ set cena=(select cena from v_rozpocty_cenik s where s.objcis=d.objcis) \ where d.iddruh='kvn' and d.objcis in (select cenik.objcis from rozpocty_cenik cenik where cenik.iddruh='kvn') cmd data update rozpocty_cenik d \ set naklady=(select naklady from v_rozpocty_cenik s where s.objcis=d.objcis) \ where d.iddruh='kvn' and d.objcis in (select cenik.objcis from rozpocty_cenik cenik where cenik.iddruh='kvn') #insert cmd data insert into rozpocty_cenik select * from v_rozpocty_cenik s \ where s.objcis not in (select cenik.objcis from rozpocty_cenik cenik where cenik.iddruh='kvn') com data #zruseni pomocne tabulky cmd data drop table v_rozpocty_cenik; com data #Disconnect ddb data exit ===== Přenos montážních ceníků CxxM z pokusných dat do ostrých ===== cdb data localhost:/home/firebird/fdbs/data.fdb sysdba heslofb WIN1250 cdb datapok localhost:/home/firebird/fdbs/datapok.fdb sysdba heslofb WIN1250 pump datapok "select * from rozpocty_cdruh where iddruh like 'cen-%'" data "insert into rozpocty_cdruh" info datapok com data pump datapok "select * from rozpocty_cenik where iddruh like 'cen-%'" data "insert into rozpocty_cenik" com data info datapok cmd data delete from common_navigators where tablename='rozpocty_cenik' and iduzivatele='' com data pump datapok "select * from common_navigators where tablename='rozpocty_cenik' and iduzivatele=''" data "insert into common_navigators" info datapok com data ddb data ddb datapok exit ===== Odstraneni nezlomitelnych mezer v UTF pomoci sed ===== sed 's/\xC2\xA0//g' 32.csv.utf | cstocs utf8 cp1250 >! 32.csv