查了一下METALINK,上面说:
Importing to a database with a different charset, IMP-00017, ora- 6550, PLS-00103 can be encountered if a procedure or a function contains a newline character within quotes.
Rediscovery Information:
If a procedure or a function contains a newline character within quotes and when importing to a database with a different charset, if IMP-00017, oracle error 6550, PLS-00103 is encountered, you might be hitting this bug.
看起来像是一个BUG(METALINK上的编号是Bug 3831513 ),
Versions confirmed as being affected:
10.1.0.3
8.1.7.4
9.2.0.5
This issue is fixed in:
9.2.0.7 (Server Patch Set)
10.1.0.4 (Server Patch Set)
10g Release 2 (future version)
你的情况是怎样的?EXP和IMP的字符集是一样的么?
I tried to import using 10.2.0 to 9i database. This shows the error like
IMP-00058: ORACLE error 6550 encountered
ORA-06550: line 1, column 33:
PLS-00302: component 'SET_NO_OUTLINES' must be declared
ORA-06550: line 1, column 7:
PL/SQL: Statement ignored
IMP-00000: Import terminated unsuccessfully.
Solution i found:
This error was encountered when exporting from a 9i database using a 10g client, and then importing into a 9i databse using the 10g client. I had to export and import using the 9i client in the end.
If you are using Windows, type PATH at the command prompt and see what the values are set to. There will most likely be multiple Oracle paths in there, for example D:\Oracle\Ora92 and D:\Oracle\product\10.2.0\db_1. The one which appears first will take priority over the others.
You can modify which appears first on your command prompt session by copying out the path to a text file, re-arranging it so that either the 9i or 10g one appears first and then copy it back into your command prompt window, with a PATH=D:\Oracle\Ora92.....etc, etc.
You can also modify this parameter for the environment by going to START -> right click My Computer -> Advanced -> Environment Variables -> In the System Variables box there is a PATH variable. Change the order of that.
If you are still unsure, you can also specify the full path whenever you invoke SQLPlus or IMP/EXP, etc. For example, my PATH variable has has D:\Oracle\Ora92 at the beginning of it but I want to use the 10g Export command. I would type D:\Oracle\Product\10.2.0\db_1\BIN\EXP to invoke the export command.