18. maj 2005 - 16:24Der er
10 kommentarer og 1 løsning
Escape tegn i et Insert-statement.
Hejsa
Jeg prøver at indsætte nogle tegn i en kolonne hvor der nogle gange indgår et '. Så vidt jeg kan se er det muligt at escape alle tegn i en string ved at sætte hele sekvensen i {}.
EX: '{Rasmus' hund's moster}'
Da strengen er automatisk genereret ved jeg ikke hvor ' kommer henne i stringen og kan derfor ikke selv indsætte et \.
Kan nogen hjælpe med måde som escaper hele den string som er givet som value?
Det bedste er vel at bruge prepared statements / parameters fordi så behøver du slet ikke gøre noget.
Hvis dit programmerings sprog / database API ikke understøtter det, kan du så ikke lave en replace i din strenge fra "'" til "''" (fra en til to single quotes).
Nu har jeg kigget lidt på prepared statement og kan godt se at man undgår det ved at bruge den.
Problemet er nu at man skal bruge en conncetion-pool for at lave en forbindelse og vi ville meget gerne undgå at lave alverden om i vores db-connection.
Problemet var da vi brugte et PreparedStaement fik vi en overload fejl hvorefter vi søgte på den fejl og fik at vide at man enten skulle lukke sin connection eller lave en connection pool. Derfor opgav vi at bruge den.
Jeg prøver at implementere det med PreparedStatement så jeg kan få fejlen igen. Eller endnu bedre få det til at virke. :D
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.