Autor Zpráva
Kaeru
Profil
Mám problém s Delphi. Doufám, že se tu najde někdo, kdo mi umí poradit. Jak uložit text z komponenty Memo do databáze za běhu programu pomocí SQL příkazu INSERT? Pokud ukládám text z Editu, tak žádný problém, pokud z Mema, tak to vyhlásí incopatible Types - String a TString... Prosím pomozte, tady je kód:

//Příprava proměnných
nazev:=Edit1.Text;
popis:=Memo1.Text;
lokace:=Edit2.Text;
hraci:=Edit3.Text;

//zápis do databáze
Query1.SQL.Clear;
Form1.Caption:='Hry';
Query1.SQL.Text:='INSERT INTO Hry values("'+nazev+'","'+Memo1.Lines+'","'+lokace+'","'+hraci+'")';
Query1.ExecSQL;
ShowMessage('Přidáno');
Edit1.Text:='';
Kaeru
Profil
Koukám, že ten kód je divně, tak aby vás to nemátlo, tak malá úprava.

nazev:=Edit1.Text;
popis:=Memo1.Lines;
lokace:=Edit2.Text;
hraci:=Edit3.Text;

//zápis do databáze
Query1.SQL.Clear;
Form1.Caption:='Hry';
Query1.SQL.Text:='INSERT INTO Hry values("'+nazev+'","'+popis+'","'+lokace+'","'+hraci+'")';
Query1.ExecSQL;
ShowMessage('Přidáno');
Edit1.Text:='';
Zb.
Profil *
mám otázku k uvedenému kódu: vždy když zadám do editu údaj a odešlu obsah do databáze, vždy zmizí obsah databáze v dbgrid a nedaří se mi to nijak ošetřit, aby tam údaje zůstaly. Když program restartuji, zadané údaje se objeví, ale po zadání nového apět to samé. Prosím o pomoc.
Zde je ukázka kódu, který používám:

ibquery1.SQL.Clear;
ibquery1.SQL.text:='insert into kucharka(nazev) values('''+edit1.text+''')';
ibquery1.Active:=true;

Vaše odpověď

Mohlo by se hodit

Zvažte, zda se neobrátit na specializované fórum, toto se zabývá především webovou problematikou.

Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: