datamodule1.adoQuery1.SQL.Add('INSERT INTO judokas (Plr_Fname, Plr_Lname, [year of birth])');Prvý riadok predpokladám v tvare:
datamodule1.adoQuery1.SQL.Add('VALUES (:Plr_Fname,:Plr_Lname,:[year of birth])');
datamodule1.adoQuery1.SQL.Add('INSERT INTO judokas (Plr_Fname, Plr_Lname, "year of birth")');
Druhý si uprav nadatamodule1.adoQuery1.SQL.Add('VALUES (:Plr_Fname, :Plr_Lname, :YearOfBirth)');
Ak je to možné, vyhoď zo všetkých názvov v mdb medzery! To je ako by si použil diakritiku. A nebudeš mať takéto problémy.
datamodule1.adoQuery1.SQL.Add('VALUES (:Plr_Fname, :Plr_Lname, :YearOfBirth)');
datamodule1.adoQuery1.Parameters.ParamByName('YearOfBirth').Value:= strtoint(splitted[2]);
Zkoušel jsem to googlit ale nenašel jsem řešení. Jde to nějak udělat za běhu? Zrušil bych tak všechny mezery i v ostatních sloupcích a měl bych klid.Abys mohl neco googlit, tak to znamena, ze si nekde prectes aspon zaklady prace s databazi...
Zrušil bych tak všechny mezery i v ostatních sloupcích a měl bych klid.A kdybys to nahodou delal, tak zrus i ta priblba podtrzitka - to je na platforme Delphi cizorody prvek, tady se pouziva Camel case.
Podľa koncovky predpokladám, že sa jedná o Access.ano je to acces
Ještě "drobnost". Aby to přejmenování fungovalo, musí být uvedený typ sloupce a v druhém příkazu nesmí být TABLE.... >:(To jsem ti taky jenom nastinil princip, jak se to dela. Ze tam ma byt typ sloupce, to jsou ty tecky za YYY (urcite tam nejaky CHAR, VARCHAR, NVARCHAR apod. pujde taky)
Na insert, update či zmenu DB máš správne použiť TADOCommand.Clovece ja nevim, jestli je to spravne doporuceni. Predstav si, ze za nejaky ten insert/update pridas RETURNING .... ev. ho zmenis na SP a ta SP bude vracet nejaky result set...
Predstav si, ze za nejaky ten insert/update pridas RETURNING .... ev. ho zmenis na SP a ta SP bude vracet nejaky result set...Ako pripomienku to beriem. Takto ma to nenapadlo. Ale v Access-e si to predstaviť neviem :D Neviem ako RETURNING, ale SP nemá.
Nevím proč se to neukládá.Ťažko mi je radiť, ale mne sa niečo podobné stáva, keď Query používam opakovane a pred priradením hodnôt do parametrov som nevykonal Close. Hodnoty v parametroch sa nezmenia. Ale to tam v ukážke máš. A nemáš tam cyklus/opakovanie. Neviem ako to adoQuery1 používaš a či na viacerých miestach. Ak áno, tak tam mi na začiatku chýba
adoQuery1.SQL.Close; // Ak to zaistíš inde, tak tu to vypadne.
adoQuery1.SQL.Clear;
...
Lenže, keby si tam už mal nejaký text, tak by to zaryčalo :( Aha, v prvej ukážke to Clear máš. Prever ten Close.SELECT BytCislo.BytCislo, Byvajuci.Priezvisko, Byvajuci.Meno
FROM BytCislo INNER JOIN Byvajuci ON BytCislo.BytCisloID = Byvajuci.BytCisloID
WHERE (((Byvajuci.ByvajuciID)=[IDmeno]));