Вопрос по – Можно ли запустить сценарий SQLPLUS для файла с кодировкой UTF-8 с помощью спецификации

7

Я пытаюсь запустить коллекцию сценариев, которые были автоматически сгенерированы из большого количества источников. К сожалению, некоторые из них были созданы как UTF-8 с спецификацией. У меня есть система автоматического удаления спецификации, но это немного грязный процесс.

Если не удалить спецификацию, возникает ошибка:

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

Можно ли запустить SQLPLUS на файл сценария, который имеет спецификацию?

Понятия не имею, но я бы начал с изучения настроек набора символов на стороне клиента, чтобы посмотреть, не отличается ли он от UTF-8. На самом деле, если автоматизировать, я бы оставил на месте процесс, чтобы лишить спецификацию. Shannon Severance

Ваш Ответ

2   ответа
4

но SQLPLUS укажет на ошибку в первой строке из-заBOM.
Возможно, вы хотели спросить, можете ли вы избежать этой ошибки -it is not possible, НАСКОЛЬКО МНЕ ИЗВЕСТНО.Erwin тоже так думает.

Вы можете обойти потерю любой информации, генерируя эти файлы с пустой первой строкой. Тогда вы можете просто игнорировать эту ошибку.

К сожалению, сценарий SQL используется как часть сценария KSH. Вывод ошибки из SQLPlus отключает скрипт KSH. Спасибо за ответ, хотя. Это подтверждает необходимость снятия спецификации. Philip Couling
3

но, похоже, они не заинтересованы в ее исправлении.

Их «рекомендуемый обходной путь» (ID документа 788156.1 Раздел C.6) состоит в удалении спецификации или создании комментария в первой строке сценария, а затем игнорировании этой ошибки.

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

Или же

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

Ошибка 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

Похожие вопросы