SSIS: Microsoft SQL Server Integration Services
SSIS: Microsoft SQL Server Integration Services Dataprix 23 May, 2014 - 19:39SSIS: Problemas para acceder a Oracle 10g desde entorno de 64 bits mediante Oledb
SSIS: Problemas para acceder a Oracle 10g desde entorno de 64 bits mediante Oledb il_masacratore 19 November, 2009 - 09:49Si estamos intendo crear una tarea de flujo de datos que acceda a Oracle usando versiones de cliente igual o inferior a la 10g en entornos de 64bits nos podemos encontrar que al añadir las conexiones aparace un mensaje como el siguiente:
"Test connection failed because of an error in initializing provider. ORA-06413: Connection not open"
La causa del problema reside en que las herramientos de cliente (management studio) de sqlserver se instalan por defecto en la carpeta de archivos de programa con "(x86)" y la mayoria de componentes de management studio estan compilado para 32 bits. A esto falta sumarle un bug de oracle con el tratamiento de esta ruta con parentesis y ya tenemos algo que no funciona...
Soluciones o workarounds para este problema hay varios, que van desde usar directamente el cliente de oracle 11g hasta copiar/pegar los ficheros de la instalación y modificar las claves de registro relativas a SSIS y las rutas de DTExec.exe (ejecutable para paquetes ssis). También debemos cambiar la plataforma en las propiedades del proyecto por una de 32 bits y tener instalada la versión de cliente correspondiente. Aquí encontrareis algunas propuestas.
Por favor, antes de decidir que hacer hay que pensarselo dos veces y analizar si el problema lo podemos esquivar por la parte de la plataforma; si disponemos otra instalación de sqlserveradicional de 32 bits donde poder deployar nuestros paquetes ssis nos ahorraremos dolores de cabeza y perder el tiempo haciendo estas modificaciones. Recuerdo haber leído también que existen parches para Oracle que lo solución, o se puede optar directamente por instalar el cliente de la 11g etc...
Buena suerte
SSIS: Solución a dos errores sin motivo aparente cuando insertamos datos en MySql
SSIS: Soluzione a due errori per nessun motivo apparente, quando inserisce i dati in MySql il_masacratore 13 September, 2010 - 10:44
Per qualunque motivo si può avere per sviluppare un pacchetto di Microsoft Integration Services che spostare i dati da qualsiasi fonte a una tabella che si trova in un database MySQL.
La prima intenzione lo farà tramite un provider ADO.NET destinazione e MySQL per la connessione. Se facciamo bene di inserire i dati direttamente, creando la destinazione, selezionare la connessione, quindi selezionare la tabella appare un errore come il seguente tutto verificare con l'anteprima o cercare di fare le assegnazioni.
Questo errore è dovuto alla modalità di compatibilità di ANSI SQL database mysql dove si cerca di caricare i dati. Per risolvere questo problema bisogna connettersi al server MySQL e cambiare la compatibilità del database SQL ANSI *:
TOCA:~# mysql -u root -p Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 77 Server version: 5.0.51a-24+lenny3-log (Debian)
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql> select @@global.sql_mode; +-------------------+ | @@global.sql_mode | +-------------------+ | | +-------------------+ 1 row in set (0.00 sec)
mysql> set global sql_mode='ANSI'; Query OK, 0 rows affected (0.00 sec)
mysql> select @@global.sql_mode; +-------------------------------------------------------------+ | @@global.sql_mode | +-------------------------------------------------------------+ | REAL_AS_FLOAT,PIPES_AS_CONCAT,ANSI_QUOTES,IGNORE_SPACE,ANSI | +-------------------------------------------------------------+ 1 row in set (0.00 sec)
mysql> exit |
Se riusciamo a ripetere il test ed ottenere una anteprima del tavolo o modificare il mapping tra le colonne, ma troviamo un altro errore quando si esegue il pacchetto:
[ADO NET destinazione [843]] Errore: eccezione quando si inseriscono i dati. Il provider ha restituito messaggio è: Unknown column 'P1' a 'Elenco campi' "
Il conducente ha un problema e non lasciare che lavoriamo bene con parametri (che è come hanno costruito gli inserimenti di record del destination), so che abbiamo a che fare un'altra soluzione per risolvere questo problem working con ADO.NET destinazione su arrival but con un sorgente ODBC nella connessione. Questa accoppiata con il tema della modifica della destinazione sql_mode MySQL ci permettono di caricare correttamente.
* Si prega di notare che il sostegno che possiamo cambiare il mondo e per la sessione o solo livello (con cui si dovrebbe aggiungere un esecuzione dei comandi in prima istanza per modificare il valore di @ @ SESSION.sql_mode). Maggiori informazioni qui.