Frage

Beim Versuch, SQL -Einfügungsanweisungen mithilfe der Ausführung von SQL -Einfügen auszuführen Oracle SQL -Entwickler Ich generiere immer wieder eine Eingabeaufforderung "Substitution eingeben":

insert into agregadores_agregadores 
(
 idagregador,
 nombre,
 url
) 
values 
(
 2,
 'Netvibes',
 'http://www.netvibes.com/subscribe.php?type=rss\&url='
);

ich habe es versucht dem besonderen Charakter in der Abfrage entkommen Verwenden Sie das oben, aber ich kann das Verstärker nicht vermeiden und '&', was zu einer String -Substitution führt.

War es hilfreich?

Lösung

Das & Definieren ist der Standardwert für Define, mit dem Sie Substitutionsvariablen verwenden können. Ich mag es, es auszuschalten

Einstellen definieren

Dann müssen Sie sich keine Sorgen machen, dass Sie entkommen oder chrt (38).

Andere Tipps

|| chr(38) ||

Diese Lösung ist perfekt.

Setzen Sie den Definieren von Charakter auf etwas anderes als &

SET DEFINE ~
create table blah (x varchar(20));
insert into blah (x) values ('blah&amp');
select * from blah;

X                    
-------------------- 
blah&amp 

insert into AGREGADORES_AGREGADORES (IDAGREGADOR,NOMBRE,URL)
values (2,'Netvibes',
'http://www.netvibes.com/subscribe.php?type=rss' || chr(38) || 'amp;url=');
SELECT 'Free &' || ' Clear' FROM DUAL;

select 'one'||'&'||'two' from dual

Die eigentliche Antwort ist

Das Problem kann entweder weil die Entfernung deaktiviert war oder der Fluchtcharakter auf etwas anderes als '' eingestellt wurde. Die obige Erklärung ermöglicht das Flucht und Stellen Sie es auf '' ein.


Keine der anderen zuvor veröffentlichten Antworten beantwortet die ursprüngliche Frage tatsächlich. Sie alle arbeiten um das Problem, lösen es aber nicht.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top