Hola, bueno hace bastante tiempo que no escribo pero bueno, aquí estoy de vuelta.
Hace unos dias estaba haciendo unas pruebas de como subir y bajar datos desde MSQL 2005 con C#, utilizando SQLDMO, y bueno después de un rato lo conseguí.
Hace unos dias estaba haciendo unas pruebas de como subir y bajar datos desde MSQL 2005 con C#, utilizando SQLDMO, y bueno después de un rato lo conseguí.
aquí la reseña.
Primero antes que nada hay que agregar la referencia a SQLDMO ( Interop.SQLDMO.dll).
using SQLDMO;
Bueno vamos a comenzar con bajar la información de una tabla "TBLXX" desde una base "BD_YY", el proceso es simple y a resumidas cuentas es el siguiente: Se genera una conexion a la BD, se configura el objeto BulkCopy, se instancia el objeto de la tabla con un Item de la BD y se exporta a un path elegido.
1: public void PaJuera()
2: {
3: SQLServer server = new SQLServerClass();
4: _BulkCopy bcp = new BulkCopyClass();
5: _Database db = new DatabaseClass();
6: _Table table = new TableClass();
7: server.EnableBcp = true; // Abusados si no ponen esto no pifa.
8: server.Connect(ServInstance, "usr", "****");
9: bcp.DataFileType = AQLDMO_DATAFILE_TYPE.SQLDMODataFile_CommaDelimitedChar;
10: bcp.RowDelimiter = @"\n";
11: bcp.UseExistingConnection = true;
12: bcp.MaximumErrorsBeforeAbort = 1000;
13: bcp.UseBulkCopyOption = true;
14: bcp.IncludeIdentityValues = true;
15: bcp.UseServerSideBCP = false;
16: bcp.DataFilePath = "archivo.txt";
17: table = server.Databases.Item("BD_YY", "dbo").Tables.Item("TBLXX", "dbo");
18: table.ExportData(bcp);
19: server.DisConnect();
20:
21: }
DataFilePath: es el nombre del archivo al que se va exportar la informacion.
No se olviden de cerrar la conexion y vaciar los objetos que ya no van a ocupar.
No se olviden de cerrar la conexion y vaciar los objetos que ya no van a ocupar.
la parte de pa' dentro es muy parecida, lo unico que cambia es que en DataFilePath se pone el archivo origen y la parte de:
table.ImportData(bcp)
y eso es todo.
Saludos y espero les sirva.