Oracle
 sql >> база данни >  >> RDS >> Oracle

Трансформирайте DT_TEXT в SSIS 2012 за Oracle CLOB

Оказва се, че SSIS Script Component няма да t позволява извеждане на текстов поток имах отговора, но трябваше да разбера какво означават полетата в отговора.

Ще обясня всички части, за да е ясно какво се случва.

Компонентът на скрипта има изход, наречен Изход 0, с прогноза за изходни колони в XML. Това са имена по подразбиране с изключение на последното. forecastXML има тип данни Текстов поток [DT_TEXT]

В самия скрипт имам низ, наречен forecastXML (да, същото име, което го прави объркващо.)

След като попълня низа predictXML с данни, мога да го присвоя на Output0Buffer със следните редове:

String forecastXML = oResult.XmlResult;
Output0Buffer.AddRow();
Output0Buffer.forecastXML.AddBlobData(System.Text.Encoding.UTF8.GetBytes(forecastXML));

Първият ред работи за всички типове данни. Тъй като пиша в NTEXT, е необходим вторият ред, а не директно присвояване. Output0Buffer.forecastXML се отнася до типа данни NText, дефиниран в моя Output 0. Последният е моят низ от кода.

За да бъда по-ясен, вместо да създавам низ, трябва да имам

Output0Buffer.forecastXML.AddBlobData(System.Text.Encoding.UTF8.GetBytes(oResult.XmlResult));

където oResut.XmlResult е резултатът от моето извикване, което получава XML. Присвояването му на низ е допълнителна, ненужна стъпка.

Това отива към CLOB на Oracle, така че следващата стъпка е да отнеса този изход към производна колона и да прехвърля изходния си прогнозXML като (DT_NTEXT)forecastXML. (Подозирам, че правя някои ненужни промени на типове.)

И след това картографирам това поле към моето CLOB поле в моята OLE DB дестинация.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Грешка:ORA-04043:името на таблицата на обекта не съществува, когато се описва която и да е таблица в конкретна потребителска работна станция от SQL командния ред

  2. EXP() Функция в Oracle

  3. Обратно към подканата на sqlplus

  4. Създайте таблица на oracle с включено автоматично ангажиране

  5. Грешка:[email protected] install:`node-gyp rebuild` докато инсталирате модула oracledb