是否有可能运行在编码为UTF-8 BOM文件的脚本SQLPLUS(Is it possible to

2019-06-24 20:01发布

我试图运行已经从大量的源自动生成的脚本的集合。 不幸的是其中的一些已经产生为UTF-8 BOM。 我有一个系统自动删除的BOM,但它有点混乱的过程。

不删除的BOM生成错误:

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

是否有可能在其上有一个BOM的脚本文件运行SQLPLUS?

Answer 1:

它可以运行这样的脚本SQLPLUS,但SQLPLUS表示开启,因为第一线的错误BOM 。
也许你要问,如果你能避免这个错误- 这是不可能的 ,据我所知。 欧文也是这样想。

您可以通过解决方法产生一个空第一行这些文件丢失任何信息。 然后,你可以忽略这个错误。



Answer 2:

这一直是与Oracle开放的错误超过6年了,但它并不像他们感兴趣的是固定它。

他们的“推荐的解决办法”( 文档ID 788156.1节C.6)是剥去BOM或让你的第一个脚本行的注释,然后忽略这个错误。

SP2-0042:未知命令“∩╗┐” - 行的其余部分被忽略。

要么

SP2-0734:未知的命令开头“ - Commen ......” - 行的其余部分被忽略。

错误13515585个详细信息 (需要OTN登录):

Bug 13515585: ADD SUPPORT FOR THE UTF-8 BOM IN SQLPLUS
Bug Status: Internal (Oracle) Review 
Created: 19-Dec-2011 
Updated: 29-Sep-2015


文章来源: Is it possible to run a SQLPLUS script on a file encoded as UTF-8 with BOM