none
Llevar este codigo a vb.net 2008 RRS feed

  • Pregunta

  • Me gustaria usar esta aplicacion para pasar de xml a sql server pero mi aplicacion esta realizada bajo vb.net 2008, y asi como esta no funciona, podrian ayudarme???

    http://support.microsoft.com/kb/316005/es
    miércoles, 18 de febrero de 2009 3:20

Respuestas

  • Hola:

    Si por "aplicación" entendemos el siguiente código fuente de Visual Basic Script que aparece en el enlace que has publicado

        Set objBL = CreateObject("SQLXMLBulkLoad.SQLXMLBulkLoad")
        objBL.ConnectionString ="provider=SQLOLEDB.1;data source=MySQLServer;database=MyDatabase;uid=MyAccount;pwd=MyPassword"
        objBL.ErrorLogFile = "c:\error.log"
        objBL.Execute "c:\customermapping.xml", "c:\customers.xml"
        Set objBL = Nothing

    para poder ejecutarlo de una manera sencilla en Visual Basic 2008, sin necesidad de referenciar bibliotecas o utilizar la interoperabilidad COM, simplemente tienes que desactivar en el módulo donde incluyas el código, la instrucción «Option Strict».

    Si en las Opciones de Visual Basic tienes activada por defecto dicha instrucción (que es lo recomendable), al comienzo del módulo donde vayas a ejecutar el código escribe:

        Option Strict Off

    Y en el evento clic de cualquier control Button, ejecutarías lo siguiente:

            ' Esta es la única línea del código que tienes que modificar.
             '
             
    Dim objBL As Object = Microsoft.VisualBasic.CreateObject("SQLXMLBulkLoad.SQLXMLBulkLoad")
           
            ' La cadena de conexión la tienes que adaptar a tu servidor SQL Server
            '
            objBL.ConnectionString ="provider=SQLOLEDB.1;" & _
                                                    "data source=MySQLServer;! & _
                                                    "database=MyDatabase;" & _
                                                    "uid=MyAccount;" & _
                                                    "pwd=MyPassword"

            objBL.ErrorLogFile = "c:\error.log"
            objBL.Execute "c:\customermapping.xml", "c:\customers.xml"
            Set objBL = Nothing

    Se entiende que has seguido los restantes pasos del artículo para crear la tabla en la base de datos de SQL Server, el archivo XML y el archivo de esquema.

    Ni que decir tiene que tienes que tener instalado en tu PC la Web Release 1 de XML para SQL Server 2000 (SQLXML) o posterior, tal y como así se indica en el artículo de la Base del Conocimiento que nos has indicado.

    Un saludo
    Enrique Martínez [MS MVP - VB]
    • Propuesto como respuesta samArg martes, 24 de febrero de 2009 16:31
    • Marcado como respuesta jtorrecillaModerator martes, 23 de noviembre de 2010 7:23
    jueves, 19 de febrero de 2009 5:26
    Moderador

Todas las respuestas

  • alguna ayuda?
    jueves, 19 de febrero de 2009 4:17
  • Hola:

    Si por "aplicación" entendemos el siguiente código fuente de Visual Basic Script que aparece en el enlace que has publicado

        Set objBL = CreateObject("SQLXMLBulkLoad.SQLXMLBulkLoad")
        objBL.ConnectionString ="provider=SQLOLEDB.1;data source=MySQLServer;database=MyDatabase;uid=MyAccount;pwd=MyPassword"
        objBL.ErrorLogFile = "c:\error.log"
        objBL.Execute "c:\customermapping.xml", "c:\customers.xml"
        Set objBL = Nothing

    para poder ejecutarlo de una manera sencilla en Visual Basic 2008, sin necesidad de referenciar bibliotecas o utilizar la interoperabilidad COM, simplemente tienes que desactivar en el módulo donde incluyas el código, la instrucción «Option Strict».

    Si en las Opciones de Visual Basic tienes activada por defecto dicha instrucción (que es lo recomendable), al comienzo del módulo donde vayas a ejecutar el código escribe:

        Option Strict Off

    Y en el evento clic de cualquier control Button, ejecutarías lo siguiente:

            ' Esta es la única línea del código que tienes que modificar.
             '
             
    Dim objBL As Object = Microsoft.VisualBasic.CreateObject("SQLXMLBulkLoad.SQLXMLBulkLoad")
           
            ' La cadena de conexión la tienes que adaptar a tu servidor SQL Server
            '
            objBL.ConnectionString ="provider=SQLOLEDB.1;" & _
                                                    "data source=MySQLServer;! & _
                                                    "database=MyDatabase;" & _
                                                    "uid=MyAccount;" & _
                                                    "pwd=MyPassword"

            objBL.ErrorLogFile = "c:\error.log"
            objBL.Execute "c:\customermapping.xml", "c:\customers.xml"
            Set objBL = Nothing

    Se entiende que has seguido los restantes pasos del artículo para crear la tabla en la base de datos de SQL Server, el archivo XML y el archivo de esquema.

    Ni que decir tiene que tienes que tener instalado en tu PC la Web Release 1 de XML para SQL Server 2000 (SQLXML) o posterior, tal y como así se indica en el artículo de la Base del Conocimiento que nos has indicado.

    Un saludo
    Enrique Martínez [MS MVP - VB]
    • Propuesto como respuesta samArg martes, 24 de febrero de 2009 16:31
    • Marcado como respuesta jtorrecillaModerator martes, 23 de noviembre de 2010 7:23
    jueves, 19 de febrero de 2009 5:26
    Moderador