Lekce 3.12
Metody DataTable pro čtení a zápis


předchozí lekce (3.11) obsah kurzu následující lekce (3.13)

Pro čtení a zápis dat se používají opět obdobné funkce jako pro databáze umístěné v databázovém okně. Pro každý typ dat se přitom používají různé metody. Musíte proto znát typ databázové položky, ze které budete číst, případně do které budete data ukládat. Pro čtení se používají metody DataTable.ReadDat, DataTable.ReadLog, DataTable.ReadNum a DataTable.ReadStr. V parametru se udává jméno položky databáze. Pokud položka zadaného jména neexistuje, případně je jiného typu, bude vrácena nulová, případně prázdná hodnota. Příklady čtení položek databáze:

Jazyk KLONDAIK: d := DataTable.ReadDat('DATUM'); c := DataTable.ReadNum('CENA'); n := DataTable.ReadStr('NAZEV'); m := DataTable.ReadMem('POZNAMKA');

Jazyk BONANZA: d = DataTable.ReadDat("DATUM") c = DataTable.ReadNum("CENA") n = DataTable.ReadStr("NAZEV") m = DataTable.ReadMem("POZNAMKA")

Jazyk JUKON: d = DataTable.ReadDat('DATUM'); c = DataTable.ReadNum('CENA'); n = DataTable.ReadStr('NAZEV'); m = DataTable.ReadMem('POZNAMKA');

Pro zápis do datumových položek se použije metoda DataTable.WriteDat, pro zápis do logických položek metoda DataTable.WriteLog, pro zápis do numerických položek se použije metoda DataTable.WriteNum a pro zápis do řetězcových položek se používá metoda DataTable.WriteStr. Při použití metod pro zápis do databáze se uvádí v prvním parametru název položky databáze a v druhém parametru hodnoty pro uložení. Pokud položka zadaného jména neexistuje, případně je jiného typu, neprovede se žádná akce. Příklad zápisu do položek databáze:

Jazyk KLONDAIK: DataTable.WriteDat('DATUM', '24/12/1997'); DataTable.WriteDat('DATUM', DataTable.EvalStr('DTOC(DAY())')); DataTable.WriteNum('CENA', 100); DataTable.WriteNum('CENA', DataTable.ReadNum('CENA')*1.1); DataTable.WriteStr('NAZEV', 'KLONDAIK');

Jazyk BONANZA: 'Je možné použít dvojího způsobu: DataTable.WriteDat "DATUM", "24/12/1997" DataTable.WriteDat "DATUM", DataTable.EvalStr("DTOC(DAY())") DataTable.WriteNum "CENA", 100 DataTable.WriteNum "CENA", DataTable.ReadNum("CENA")*1.1 DataTable.WriteStr "NAZEV", "KLONDAIK" Call DataTable.WriteDat("DATUM", "24/12/1997") Call DataTable.WriteDat("DATUM", DataTable.EvalStr("DTOC(DAY())")) Call DataTable.WriteNum("CENA", 100) Call DataTable.WriteNum("CENA", DataTable.ReadNum("CENA")*1.1) Call DataTable.WriteStr("NAZEV", "KLONDAIK")

Jazyk JUKON: DataTable.WriteDat('DATUM', '24/12/1997'); DataTable.WriteDat('DATUM', DataTable.EvalStr('DTOC(DAY())')); DataTable.WriteNum('CENA', 100); DataTable.WriteNum('CENA', DataTable.ReadNum('CENA')*1.1); DataTable.WriteStr('NAZEV', 'KLONDAIK');

Nový záznam můžete do databáze doplnit metodou DataTable.AppendBlank. Nový prázdný záznam potom můžete výše popsaným způsobem naplnit hodnotami.

UPOZORNĚNÍ:
Při zápisu do databáze musíte dávat pozor na to, že ztratíte nenávratně předchozí obsah položek a pokud použijete k experimentům přímo databáze používané například vámi používaným ekonomickým programem, můžete ztratit i mnohem více. Nepoužívejte proto ve vlastním zájmu databáze využívané jinými systémy.


předchozí lekce (3.11) obsah kurzu následující lekce (3.13)

OZOGAN, 1 Máje 97, 460 01 Liberec
tel.,fax: (048) 52 28 338, e-mail: info@ozogan.cz