2009-10-19 8 views

Répondre

19

Cela devrait fonctionner:

UPDATE myTable 
SET myField = REPLACE(myField, '''', '"'); 
6

Vous pouvez utiliser Ansi codes aussi bien,? pour le rendre plus cristal ce qui se passe:

SELECT someString 
     ,replace(someString, Chr(39), Chr(34)) as replacedString 
FROM (SELECT ' abc ' || Chr(39) || ' def ' as someString 
     FROM Dual) 

39 est une citation simple, 34 un guillemet

-1

Dix dollars que cette chose est grande ouverte à l'injection SQL et la bonne réponse est d'utiliser le paramétrage.

+3

Cette réponse aurait été beaucoup plus utile si vous aviez fourni un exemple de paramétrage: comment l'utiliser pour résoudre ce problème? –

+0

Nous ne savons rien de l'environnement à partir duquel est appelé, ni la requête, donc il n'y a pas d'exemple général que je puisse donner qui sera pertinent de quelque manière que ce soit.Ce qui est probablement appelé par le code client et il y a plusieurs façons de le paramétrer. –

-1

Si vous avez une variable dans des guillemets simples avec une apostrophe, par ex. "Livre de John", insérez simplement 2 apostrophes. c'est-à-dire 'John''s Book '. NOTE: N'utilisez PAS une double citation "