Как прочитать значения данных NCLOB, CLOB из базы данных Oracle, используя страницы Classic ASP? - PullRequest
2 голосов
/ 15 февраля 2011

Я получаю следующую ошибку: Поставщик Microsoft OLE DB для Oracle: тип данных не поддерживается.

Может кто-нибудь помочь мне разобраться, пожалуйста ...

Ситуация: недавно перенесенбаза данных от SQL Server 2005 до Oracle 11g.В одной из таблиц есть несколько столбцов типа данных ntext в SQL Server, которые были преобразованы в NCLOB во время миграции в Oracle.Клиент - это классическая ASP-страница (VBScript), обращающаяся к базе данных Oracle через соединение OLEDB.Когда выполнение достигает запроса (выборочный запрос), который читает столбец типа NCLOB, он выдает Microsoft OLE DB Provider для Oracle: тип данных не поддерживается ошибка.Когда я убираю этот конкретный столбец, тогда запрос выполняется нормально ...

ВОПРОС: Как прочитать значения данных NCLOB, CLOB со страниц Classic ASP?

Плз, дайте мне знать, если вам нужнобольше информации .....

Спасибо ..

1 Ответ

2 голосов
/ 15 февраля 2011

Я знаю, что драйвер ODBC от Microsoft для Oracle не поддерживает ни один из типов больших объектов - я бы поспорил, что его поставщик OLE DB тоже не выдал ошибку.Можете ли вы перейти на Oracle OLE DB Provider?

Кроме того, поскольку вы переходите с SQL Server на Oracle, вам действительно нужно использовать тип данных NCLOB?Поскольку Oracle допускает, чтобы набор символов базы данных был Unicode, вам обычно не нужно (и не нужно) использовать типы данных NVARCHAR2 или NCLOB, если вы не застряли, поддерживая старую базу данных, которая требует набора символов не-Unicode.Для данных английского или западноевропейского характера хранение данных в CLOB имеет существенные преимущества с точки зрения пространства хранения, поскольку CLOB будет хранить данные в UTF-8, а не в UTF-16 в NCLOB (при условии, что вы выбрали Unicodeнабор символов для базы данных).Исключение столбцов NVARCHAR2 и NCLOB также значительно упрощает обработку данных интерфейсными инструментами.

...