====== ISQL ======
Spuštění:
isql -user sysdba -password heslo "server:c:\adresar\dat\data.fdb"
Místo zapisování parametrů user/password v programemch ISQL, GBAK apod. lze
použít nastavení proměnných prostředí (viz. následující ukázka pro OS Windows).
set ISC_USER=sysdba
set ISC_PASSWORD=heslo
===== Některé příkazy programu =====
* show database - informace o připojené databázi
* show tables - vypíše seznam všech tabulek v databázi
* show table //jméno_tabulky// - vypíše strukturu tabulky
* show indices - vypíše seznam všech indexů
* show index //jméno_tabulky// - vypíše indexy dané tabulky
* alter index //jméno_indexu// inactive - deaktivace indexu
* alter index //jméno_indexu// active - aktivace indexu
Příkazy pro definici dat: CREATE, ALTER, DROP, GRANT, REVOKE
Příkazy pro manipulaci s daty: SELECT, INSERT, UPDATE, DELETE
Všechny příkazy je třeba ukončit znakem středník (např.: show database;)
===== Příklad tvorby tabulky do externího souboru =====
create table ext_cenik external file 'c:\fbdata\cenik.txt' (
idcen varchar(15),
popis varchar(60),
mj varchar(4),
objcis varchar(30),
cisrozp varchar(15),
minut float,
cena float,
naklady float);
Příklad přidání sloupečku 'v_vyridil' do tabulky 'partneri_partneri'
alter table partneri_partneri add v_vyridil VARCHAR(8);
Každý příkaz v programu //isql// musí být zakončen //středníkem//.
===== Transakce =====
set transaction read committed;
===== How to activate all indexes? =====
SET HEADING OFF;
OUT tmp.sql;
select 'GRANT ALL ON '||rdb$relation_name||' TO some_user;'
from rdb$relations
where rdb$system_flag is null or rdb$system_flag = 0;
OUT;
INPUT tmp.sql;
COMMIT;
SET TERM !! ;
EXECUTE BLOCK AS
DECLARE VARIABLE stmt VARCHAR(1000);
BEGIN
for select 'ALTER INDEX '||rdb$index_name ||' ACTIVE;'
from rdb$indices
where (rdb$system_flag is null or rdb$system_flag = 0)
order by rdb$foreign_key nulls first
into :stmt
do EXECUTE STATEMENT :stmt;
END!!
SET TERM ; !!