Kommunerne har digitaliseret indgangen for borgerne. Men bag skærmen håndteres mange arbejdsgange stadig manuelt mellem systemer, mails og organisatoriske siloer.
ERROR [42000] [MySQL][ODBC 3.51 Driver][mysqld-4.0.13-nt]You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'WHERE Id =' at line 1
et eller andet er galt med id ser ud som om den ikke kommer med og jo alder var et tal, så den fejl er nu rettet
Væn dig selv til at skrive dine SQL-strenge ud, så du kan se om de genererer noget forkert, som man ikke lige kan gennemskue direkte i koden. Det er typisk det der sker i ~95% af tilfældende.
Prøv fx. Response.Write(MySQLstr) og afbryd derefter funktionen så den ikke fejler.
Så har fejlen jo intet at gøre med din SQL-streng, og ovenstående kode-udsnit er ikke til meget hjælp. Det kan godt være det virker i din delete-funktion, men jeg går ud fra at den foregår et andet sted i koden, hvorfor du jo ikke kan være sikker på at e.Item.Cells indeholder det samme.
Public Sub DataGrid_Update(Source As Object, E As DataGridCommandEventArgs) ':::::::::::::::::::::::::Her en en dns-less connection Dim sConnectString = "Driver={MySQL ODBC 3.51 Driver};Server=localhost;Database=test;Option=16834" Dim MyConnection As New OdbcConnection(sConnectString) MyConnection.Open()
Dim txtnavn As TextBox = E.Item.Cells(1).Controls(0) Dim txtalder As TextBox = E.Item.Cells(2).Controls(0) Dim txtID As TextBox = E.Item.Cells(3).Controls(0)
Dim MyOdbcCommand = New OdbcCommand(MySQLstr, MyConnection) 'MyOdbcCommand.ExecuteNonQuery() MydataGrid.EditItemIndex = -1 MyConnection.Close() BindData("navn DESC") End Sub
Sub DeleteRecord(Source As Object, E As DataGridCommandEventArgs) ':::::::::::::::::::::::::Her en en dns-less connection Dim sConnectString = "Driver={MySQL ODBC 3.51 Driver};Server=localhost;Database=test;Option=16834" Dim MyConnection As New OdbcConnection(sConnectString) MyConnection.Open()
':::::::::::::::::::::::::slet en record Dim MySQLstr = "DELETE from test WHERE id =" & E.Item.Cells(3).Text Dim MyOdbcCommand = New OdbcCommand(MySQLstr, MyConnection) MyOdbcCommand.ExecuteNonQuery() MyConnection.Close() BindData("navn DESC") End Sub
nej det er jo det der er problemet - og selv om jeg skriver... WHERE id =" & E.Item.Cells(3).Text istedet virker det heller ikke, så af en eller anden grund er E.Item.Cells(3).Text tom
Sådan er det nu beskrevet i alle eksemplerne i SDK'en. Hvis du vil have det simplere må du skifte til C#: TextBox txtnavn = (TextBox)e.Item.Cells[1].Controls[0];
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.