Question

I'm trying to run a collection of scripts which have been auto-generated from a large number of sources. Unfortunately some of these have been generated as UTF-8 with BOM. I have in place a system for automatically removing the BOM, but its a bit of a messy process.

Failing to remove the BOM generates the error:

SP2-0042: unknown command "" - rest of line ignored.

Is it possible to run SQLPLUS on a script file which has a BOM?

Was it helpful?

Solution

It is possible to run SQLPLUS with such script, but SQLPLUS will indicate an error on the first line because of BOM.
Probably you wanted to ask if you can avoid this error - it is not possible, AFAIK. Erwin thinks so too.

You can workaround losing any information by generating those files with an empty first line. Then you can just ignore this error.

OTHER TIPS

This has been a bug open with Oracle for over 6 years now, but it doesn't look like they are interested in fixing it.

Their 'recommended workaround' (Doc ID 788156.1 Section C.6) is to strip the BOM or make your first script line a comment, and then ignore this error.

SP2-0042: unknown command "" - rest of line ignored.

Or

SP2-0734: unknown command beginning "-- Commen..." - rest of line ignored.

Bug 13515585 Details (requires OTN login):

Bug 13515585: ADD SUPPORT FOR THE UTF-8 BOM IN SQLPLUS
Bug Status: Internal (Oracle) Review 
Created: 19-Dec-2011 
Updated: 29-Sep-2015
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top