05. september 2006 - 15:16Der er
15 kommentarer og 1 løsning
Update statment fejl i .NET
Hej, jeg er ved at lave mig en lille webshop. Jeg har problemer med at lave updates til min Access DB. Jeg bruger "Visual web developer 2005 express edition" da jeg er ny i .NET og mener der er gode toturials her i.
Jeg har lavet en Access_datasource som henter alt i en tabel, som jeg herefter får vist i et Gridview, heri kan jeg vælge at opdater en række, når jeg så ændrer et af felterne og trykker update får jeg flg. svar fra serveren. Detaljer om undtagelse: System.Data.OleDb.OleDbException: "Der er en syntaksfejl i UPDATE-sætningen." Min update kode ser sådan her ud. <asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server"> <TABLE border=0 cellpadding=0 cellspacing=0 style="width: 100%; height: 100%"> <TR> <TD style="width: 1068px; height: 49px; text-align: right" valign=top> <SPAN style="font-size: 10pt; font-family: Verdana"> <asp:AccessDataSource ID="AccessDataSource1" runat="server" DataFile="~/App_Data/webshop.mdb" SelectCommand="SELECT * FROM [alder]" UpdateCommand="UPDATE alder SET alderId =, [Alder_i_år] ="> <UpdateParameters> <asp:ControlParameter ControlID="GridView1" Name="alderID" PropertyName="SelectedValue" /> <asp:ControlParameter ControlID="GridView1" Name="AlderIÅr" PropertyName="SelectedValue" /> </UpdateParameters> </asp:AccessDataSource> </SPAN><SPAN style="font-size: 10pt; font-family: Verdana"> </SPAN> </TD> </TR>
Ja det er rigtigt jeg har to felter en alderId og Alder_i_år felt. Ja jeg burde have en WHERE Course i sql sætningen. Men Jeg troede egentligt at programmet Visual web developer 2005 express edition" AKA VWD2006 som jeg arbejder i selv satte WHERE Courses da den jo selecter den specifikke rækkke som jeg har valgt til opdatering.
får du noget ud i feltet : <asp:BoundField DataField="Alder_i_år" HeaderText="Alder_i_år" SortExpression="Alder_i_år" /> Jeg vil også lige anbefale dig at lade være med at bruge æøå i dine database felter brug ae,oe og aa i stedet.
Kan det forresten passe at jeg skal poste med parameter ala: string queryString = "UPDATE [alder] SET [alderId]=@alderId, [Alder_i_år=@Alder_i_år WHERE ([alder].[a" + "lderId] = @alderId)";
og fjernede update parametrene. når du har et bound field skal du ikke tilføje updateparametre. og ændrede dit update sætning lidt med en where svar :)
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.