Avatar billede cogitans Nybegynder
03. april 2006 - 09:15 Der er 11 kommentarer og
1 løsning

Update i felt udenfor datagrid

Jeg programmerer i Visual Studio 2005, og har lavet en side, hvor der vises data fra en tabel i Access. Jeg har lavet en column med editmuligheder. Men når jeg trykker på edit, taster de opdaterede oplysninger ind, og trykker på "update", så får jeg fejlen:
"
Der er en syntaksfejl i UPDATE-sætningen.
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

Exception Details: System.Data.OleDb.OleDbException: Der er en syntaksfejl i UPDATE-sætningen.
"

Det er vel referencen til felterne med update-informationerne, som der ikke refereres rigtigt til. Men hvordan gøres dette?
Avatar billede agertoft Nybegynder
03. april 2006 - 10:03 #1
Prøv at skrive din SQL sætning ud. Det er din sql-sætning som fejler, og det kan godt være fordi dine værdier i datagrid'et ikke bliver fanget rigtigt. Men det kan også være en generel syntaksfejl...

Prøv at skrive den ud...
Avatar billede cogitans Nybegynder
03. april 2006 - 10:28 #2
Min UPDATE ser således ud:

UPDATE T_Status
SET Prioritet=?, Program=?, Tekst=?
WHERE F_Id=?

Men den får ikke fat i F_Id, som er i row'en. Jeg har allerede defineret en control til at binde op imod, da GridView'et skal udfyldes med data fra tabellen, som passer med et valg i en dropDownBox på siden. Den del fungerer også godt nok.

Jeg har også 2 RequiredFieldValidators, som checker på indtastninger i 2 tekstboxe. Disse 2 validators bliver også aktiveret, når jeg har trykket på update. Så klager de over, at jeg ikke har indtastet noget i de 2 andre tekstboxe, selvom de slet ikke har noget med opdateringen at gøre. Og jeg har heller ikke sat dem til at kontrolere DataGrid'et.
Avatar billede snepnet Nybegynder
03. april 2006 - 15:02 #3
kan du ikke paste din aspx-kode?
ellers kan du hente eksempler her:
http://www.microsoft.com/downloads/details.aspx?FamilyID=3f0aa1ee-8041-4ec1-9141-3f83d0bcbd62&displaylang=da
har du sat datakeynames?
mvh
Avatar billede cogitans Nybegynder
03. april 2006 - 16:04 #4
Nu har jeg fået det til at virke. Jeg synes, at VIsual Studio 2005 er noget upraktisk. Man kan f.eks. gå ind og sætte hyperlink i et gridview. Der er minimum 2 forskellige måder, at gå ind og sætte dem på. Og tilsyneladende er det kun den ene metode, som virker. Og sådan er der et par flere ting i programmet. Jeg føler mig lidt frustreret...
Avatar billede snepnet Nybegynder
03. april 2006 - 22:20 #5
ok - jeg synes det er et fantastisk program :o)
et hyperlink er et hyperlink ... hvad er du sidder med hvor det virker på den ene måde, og ikke den anden?
mvh
Avatar billede cogitans Nybegynder
04. april 2006 - 13:15 #6
Det virker ikke, hvis jeg blot tilføjer en kolonne, og så sætter kolonnetypen til "Hyperlink". Det fungerer deriomod, hvis jeg fra begyndelsen vælger "Add hyperlink".
Avatar billede snepnet Nybegynder
04. april 2006 - 18:26 #7
mm... hvad er det der ikke virker.... det her er f.eks. en hyperlink kolonne der resulterer i et link til Details.aspx?personId=*
hvor * er det der ligger i datakilden på kolonne/property PersonId

<asp:HyperLinkField DataNavigateUrlFields="PersonId" DataNavigateUrlFormatString="Details.aspx?personId={0}" Text="Edit on new page" />

mvh
Avatar billede cogitans Nybegynder
19. august 2006 - 17:58 #8
I mangel af bedre lukkes spørgsmålet nu efter frivillig tvang...
Avatar billede snepnet Nybegynder
19. august 2006 - 18:28 #9
Hvad mener du med det?
Mvh
Avatar billede cogitans Nybegynder
19. august 2006 - 19:32 #10
Jeg mener, at jeg ikke helt kan huske problemet fra den gang, så derfor kan jeg ikke se, hvem der er kammet nærmest en løsning her på siden. Og da nogle andre brugere åbenbart søger, at så mange spørgsmål som muligt bliver accepteret, så må jeg jo hellere til det.
Hvorom alt er, så er netop dette spørgsmål ikke aktuelt længere.
Avatar billede agertoft Nybegynder
19. august 2006 - 20:21 #11
Når du skriver om dit problem, og snepnet er så venlig at bruge tid på at hjælpe dig med at løse det, så er det mindste du kan gøre, når du selv ikke længere gider bruge tid på at løse problemet da at sige tak til snepnet for hjælpen og give ham point for det. Bare at lukke spørgsmålet og skrive, at hjælpen ikke var god nok uden selv at gøre en indsats for at løse det, selvom du har fået ledetråde af snepnet er da en anelse flabet...
Avatar billede cogitans Nybegynder
20. august 2006 - 12:02 #12
Det mener jeg nu ikke. En person kan bruge nok så meget tid på at give information, men hvis informationen ikke er aktuel, så hjælper det jo ikke meget. Og derfor burde man heller ikke give point for det.
Men for husfredens skyld giver jeg skam gerne point til snepnet. Det kræver blot et svar fra vedkommende.
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
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

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