[elektro] OT: Lazarus (Delphi) adatbázis kezelés alap kérdés (új rekord beírása az adatbázisba)

elight elight at gmail.hu
Mon Jan 9 15:43:38 CET 2017


Parancssorból próbáltad már egyesével?
Ez lehet?

MySQL ben pl.  van parancssori kezelés
ott használtam is,
egészen jól lehet vele debuggolni.

Egyszer  kis-nagybetű keveredésem volt,
az is  jól kiderült.. Meg a felesleges
sorok beillesztése is..
Igaz nekem olyan problémám adódott
hogy programból több került be az
adatbázisba, mint amennyi ténylegesen
kellet volna. (beszemetelés)

Szóval helyedben a legelejétől kezdve
a könyv (tutorial)  szerint
lépésenként haladnék
ha sehogy sem akarna összejönni.

Üdv István.


2017-01-09 15:35 keltezéssel, Horváth Zsolt írta:
>     Ma megpróbáltam még: titkosítani az adatbázist és úgy megnyitni. Próbáltam Access 2000 illetve Access 2002-2003 formátumba elmenteni és úgy hozzáfűzni. Az eredmény mindig ugyanaz volt, ami eddig is: a program lefut hibajel nélkül, új adat viszont nem kerül bele a táblába!  Már nagyon el vagyok keseredve. Nincs ötletem, egyszerűen nem tudok rájönni, mit csinálok rosszul! Már napok óta egyhelyben toporgok emiatt a probléma miatt.      Horváth Zsolt
> "Orbán Árpád" <orbana at orbel.hu> írta:
>> Persze elrontottam, a második helyesen:
>> SQLQuery.SQL.Text  := 'insert into table (mezo1, mezo2) values (1,
>> '''a''')';
>>
>> Árpi
>>
>> 2017.01.08. 15:19 keltezéssel, Orbán Árpád írta:
>>> Szia!
>>>
>>> Így próbáld:
>>> SQLQuery.SQL.Text  := 'insert into table (mezo1, mezo2) values (:m1, :m2)';
>>> SQLQuery.ParamByName('m1').AsInteger := 1;
>>> SQLQuery.ParamByName('m2').AsString := 'a';
>>> SQLQuery.Execute;
>>>
>>> vagy a másik lehetőség (én inkább az előzőt használom):
>>>
>>> SQLQuery.SQL.Text  := 'insert into table (mezo1, mezo2) values (1, 'a')';
>>> SQLQuery.Execute;
>>>
>>> Lehet, hogy a Commit is kell, azt majd próbáld ki! (Én Zeos-t használok,
>>> az picit más.)
>>>
>>> Árpi
>>>
>>>
>>>
>>> 2017.01.08. 14:40 keltezéssel, Horváth Zsolt írta:
>>>>     Sziasztok!   Mivel programozással is elég sokan foglalkoztok itt,
>>>> remélem, ez a téma még belefér a lista kereteibe...   Lazarusban
>>>> (Delphi helyettesítője, vele szinte egyenértékű fejlesztőrendszer)
>>>> szeretnék egy MS-Access adatbázishoz hozzáírni új rekordokat. (Windows
>>>> 7, legújabb Lazarus, az access driverei, ODBC feltelepítve.) Az
>>>> adatkapcsolat létrehozása és a csatlakozás működik. (Ki tudom olvasni
>>>> az adatbázis tartalmát.) Már elolvastam egy csomó leírást, itt van pl.
>>>> az egyik: http://wiki.freepascal.org/Working_With_TSQLQuery    Az
>>>> "Insert query example" résznél leírt kétsoros megoldást próbálgatom,
>>>> de egyszerűen nem akar működni! Az adatbázist elkészítettem
>>>> access-ben: egyetlen táblából áll, 4 oszlop, mindegyikben egy byte
>>>> érték van. Ezekhez próbálok hozzáírni egy sort, az alábbi
>>>> programrészlet segítségével: ODBCConn.Open;
>>>> SQLQuery.Close;
>>>> SQLQuery.SQL.Text:='SELECT * FROM Table0';
>>>> SQLQuery.Open;
>>>> SQLQuery.AppendRecord(['2','1','1','4']);
>>>> SQLTrans.Commit;
>>>> ODBCConn.Close;           Lépésenként futtatva látom, hogy az
>>>> adatbázisfájl mellett létrehoz egy másik fájlt (laccdb
>>>> kiterjesztéssel). A program hibajelzés nélkül lefut, az adatbázis
>>>> tartalma azonban nem változik! Mit csinálok rosszul?           Horváth
>>>> Zsolt
>>>> -----------------------------------------
>>>>            elektro[-flame|-etc]
>>>>
>>> -----------------------------------------
>>>           elektro[-flame|-etc]
>> -----------------------------------------
>>           elektro[-flame|-etc]
> -----------------------------------------
>            elektro[-flame|-etc]



More information about the Elektro mailing list