Avatar billede poulsgaard Praktikant
01. maj 2002 - 15:03 Der er 9 kommentarer og
1 løsning

update efter ændringer i mysql

Hej igen

Jeg har hentet shareware udgaven af SciBit MySQL Componenten.

på min form har jeg et DBedit og et DBmemo felt.

de er koblet på en Tdatasource der er koblet på en MySQLdataset der igen er koblet op på en MySQLDatabase.

godt så.

Jeg får vist formen med mine felter der indeholder en værdier fra database.

Jeg vil nu ændre i data. Det går fint men når jeg skal gemme/update database igen går det galt.

Jeg kunne godt lave en SQL string der hedde noget i regning af UPDATE tbl_xx SET edit=DBedit1.Text osv..

men dette giver mig problemer i nå jeg skal gøre det med memo elementet.

ER dette måden at gøre det på, eller er der en genvej??

-på forhånd tak

Peder Poulsgaard
Avatar billede laffe Nybegynder
01. maj 2002 - 15:06 #1
Hvis du i din form viser en record ad gangen. så lav en knap, som poster recorden (med dine ændringer).
Avatar billede poulsgaard Praktikant
01. maj 2002 - 15:07 #2
en yderlige bemærkning:

Tmysqldataset.post giver en fejl
Avatar billede laffe Nybegynder
01. maj 2002 - 15:07 #3
Der findes en post metode du kan bruge
Avatar billede laffe Nybegynder
01. maj 2002 - 15:08 #4
Hvad for en fejl ?
Avatar billede poulsgaard Praktikant
01. maj 2002 - 15:14 #5
Hov laffe, havde ikke set dit indlæg.

Er det proceduren TMySQLDataset.post du mener??, som sagt giver den mig en fejl.

Componenten TMySQLDataset har nogle parameter for forskellige SQL handligner for SQLupdata er den:

update [$TABLENAME] set [$MODIFIED$FIELDS&VALUES] where [$PRIMARYFIELDS&VALUES]

Når jeg kører proceduren kommer fejlen:

[klip]error 1064 you have aan error on your SQL syntax near 'set memo=0x61 where (id='3') at line 1 [klip]

Jeg har skrevet a (0x61) i memofeltet.

jeg har intet med den updateSQL string at gøre, men kan godt se at der måske skulle stå memo = 'a' istedet.....
Avatar billede laffe Nybegynder
01. maj 2002 - 15:19 #6
De data du viser, er de lavet på baggrund af en query eller en tabel ?
Avatar billede poulsgaard Praktikant
01. maj 2002 - 15:26 #7
Dette er første gange jeg bruger mysql.
Normalt når jeg bruger Access stammer mine data enten fra en Ttabel, eller en TQuery.

Men i dette tilfælde tror jeg de stammer fra TMySQLDataSet.
Jeg bruger ingen tabeller, eller Querys.

Poulsgaard
Avatar billede laffe Nybegynder
01. maj 2002 - 15:31 #8
Kan du bruge de gængse metoder til at gennemløbe en tabel

First,Next,Eof,Edit,Post osv ?


Hvis disse er tilgænglige, så burde du også kunne poste en record. Jeg skulle måske lige nævne, at du skal huske at kalde edit.

Altså:

Edit
Opdater felter
Post
Avatar billede poulsgaard Praktikant
01. maj 2002 - 15:36 #9
bliver nød til at vende tilbage i morgen. takker forløbig
Avatar billede poulsgaard Praktikant
13. maj 2002 - 13:22 #10
Hej igen, ja det blev vist lidt mere end "i morgen"

Jeg har rodet en masse med denne komponent, men har ikke kunne få det til at virke, hvis ikke den meldte den allerede beskrevet fejl ved update af en memo felt, skrev den at værdien jeg forsøgte at indsætte i en text ikke var en korrekt formateret tid. (!)

http://www.zeoslib.org har jeg istedet fundet en komponent der kan det samme, men denne komponent virker.


Jeg gider ikke rode mere med den anden.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester