Oracle Befehl Unbekannt Fehler beim ausführen der stored proc
Bin ich mit dem SQl-Developer zum ausführen einer Prozedur in einem Paket namens " CONTRACTOR_REG. Die Prozedur hat die folgende Signatur.
PROCEDURE usp_ins_contractor_all(
webid VARCHAR2,--
firstname VARCHAR2,--
lastname VARCHAR2,--
middlename VARCHAR2,--
busname VARCHAR2,--
townname VARCHAR2,--
strname VARCHAR2,--
strtypecd VARCHAR2,--
strpfxcd VARCHAR2,--
strsfxcd VARCHAR2,--
addressoverflo VARCHAR2,--
houseno VARCHAR2,--
zipcd VARCHAR2,--
state VARCHAR2,--
phonenum VARCHAR2,--
phonenight VARCHAR2,
phonecell VARCHAR2,--
phonefax VARCHAR2,--
phonepager VARCHAR2,
licno VARCHAR2,--
regSite VARCHAR2,
licstate VARCHAR2,--
level_type VARCHAR2 := 'NA',--
type_cd CHAR)
Ich versuche, führen Sie die folgenden:
exec user1.contractor_reg.usp_ins_contractor_all('testing12345',
'test',
'me',
'a',
'testbiz',
'DFGGH',
'something',
null,
null,
null,
'pobox:12345',
'45',
'00000',
'DF',
'1231231231',
'2342342344',
'443243242',
'111111111',
null,
'123123123',
null,
'FD',
'NA',
'EC')
Bekomme ich folgenden Fehler:
Error starting at line 25 in command:
'EC')
Error report:
Unknown Command
Scheint wirklich zufällig zu mir, was ist falsch mit meinem letzten parameter?
Vielen Dank im Voraus!
- Ist es wirklich eine gespeicherte Prozedur, oder ist es eine Prozedur, die in einem Paket?
- Verfahren, die in einem Paket, aorry denke, ich hätte mehr klar, ich bin verwendet, um mssql.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Den Grund erwähnt in Ihrer Antwort könnte nicht der Grund sein für den Fehler.
Als Alex unten genannten, zu verwenden EXEC mit SQLPLUS, die Sie brauchen verwenden Sie die Fortsetzung Charakter, wenn Ihr den Befehl über mehrere Zeilen...
http://download.oracle.com/docs/cd/B19306_01/server.102/b14357/ch12022.htm#i2697931
EXEC ist ein SQLPLUS-Befehl. wenn Sie verwenden..
in sqlplus,es wiederum fügt eine Start-und Ende-block, um die Ausführung Ihrer Prozedur...
Nicht sicher, ob SQL-Developer unterstützt diese.Ich habe keinen Zugriff auf SQL-Entwickler bei der Arbeit, aber..
Haben Sie versucht, die Ausführung dieser Prozedur mit BEGIN-END ?
;
nachdem die gespeicherte Prozedur aufrufenEXEC
erwähnt, dass der Befehl muss in eine Zeile passen, kann aber ausdrücklich weiter.Sich, Sie können keine Zeilenumbrüche zwischen den einzelnen Parameter haben, wie ich... Blöde Programm...
exec user1.contractor_reg.usp_ins_contractor_all('testing12345','test','me','a','testbiz','sdfsdf','something',null,null,null,'pobox:12345','45','00000','sdfff', '1231231231', '2342342344', '443243242', '111111111', null, "123123123", null, 'sdff', 'E1','EG')
EXEC
in SQLPlus oder SQL Developer. Sie können, obwohl, verwenden Sie das fortsetzungszeichen (-
) weiterhin den Befehl zu einer zweiten Linie, zumindest in SQLPlus noch nicht getestet, im SQL Developer. Dokumentation für SQL*PlusEXEC
'd.... Wenn Sie versucht haben, geben Sie den gesamten Aufruf in SQLPlus es würde versuchen, führen Sie es, sobald Sie Eingabe drücken, die erste Zeit, Sie wartet nicht darauf, für (oder müssen) die nachfolgende;
. Ich vermute, SQL Developer kopiert es für die Kompatibilität. Keine Ahnung, ob es einen Grund obwohl, vielleicht historischen, basierend auf, wie der Kunde ist oder war eingeschränkt. Sie würde Fragen müssen, Oracle *8-)