Tout en essayant d'exécuter des instructions d'insertion SQL à l'aide d' Oracle SQL Developer, je continue de générer une invite "Enter substitution value":
insert into agregadores_agregadores
(
idagregador,
nombre,
url
)
values
(
2,
'Netvibes',
'http://www.netvibes.com/subscribe.php?type=rss\&url='
);
J'ai essayé d' échapper au caractère spécial dans la requête en utilisant le '\' ci-dessus mais je ne peux toujours pas éviter l'esperluette, '&', provoquant une substitution de chaîne.
sql
oracle
escaping
oracle-sqldeveloper
ian_scho
la source
la source
Définissez le caractère de définition sur autre chose que &
la source
insert into AGREGADORES_AGREGADORES (IDAGREGADOR,NOMBRE,URL) values (2,'Netvibes', 'http://www.netvibes.com/subscribe.php?type=rss' || chr(38) || 'amp;url=');
la source
SELECT 'Free &' || ' Clear' FROM DUAL;
la source
select 'one'||'&'||'two' from dual
la source
select 'one&' || 'two' from dual
La vraie réponse est que vous devez définir le caractère d'échappement sur '\': SET ESCAPE ON
Le problème peut s'être produit soit parce que l'échappement a été désactivé, soit parce que le caractère d'échappement a été défini sur autre chose que «\». L'instruction ci-dessus activera l'échappement et le définira sur '\'.
Aucune des autres réponses publiées précédemment ne répond réellement à la question d'origine. Ils contournent tous le problème mais ne le résolvent pas.
la source
ajoutez ceci avant votre demande
set define off;
la source