15. december 2007 - 17:50Der er
13 kommentarer og 1 løsning
odbc forbindelse til MySQL og brug af parameters
jeg har nu forsøgt mig med at bruge paramereters i min odbc forbindelse til min MySQL database, men jeg kan ikke få det til at virke, er der nogle som ligger inde med et eksempel på dette???
Jeg har endnu ikke fået MySQL til at acceptere navngivne parametre. I stedet acceptere den kun ?-tegn for parametrene, og så er det (vist?) rækkefølgen som de Add'es i der betemmer hvilken parameter der bindes imod:
using (OdbcConnection conn = new OdbcConnection(connStr)) { string sql = @"DELETE FROM guestbook WHERE visible = 0 AND ip = ?";
ja... det er jo ikke altid at jeg kun vil indsætte ip i min database, nogle gange skal den jo gemme fx. indholdet af fire textboxe og jeg bruger en metode (fra en dll) til at udføre min sql kald...
ODBC bruger kun positionel parameter (? uden navn).
Men MySQL Connector for .NET accepterer navngivne parametre.
MySqlCommand ins = new MySqlCommand("INSERT INTO temptest VALUES (?id)", con); ins.Parameters.Add("?id", MySqlDbType.VarChar, 20); ins.Parameters["?id"].Value = "Dette er en test";
men kan man så lave en "dynamisk" metode som kan modtage en sql sætning med x antal ? tegn og så et array "params string[]" med samme antal textboxes indhold... og så via en løkke bearbejde inputet til at blive gemt i min database???
Det er virker jo super, men nu har jeg så fået et problem med at update, for jeg brugte den samme metode til dette, kan man skrive stringen "INSERT INTO {0} ({1}) VALUES ({2}) om til en update???
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.