Inserción MASIVA de datos, BULK INSERT en Sql Server

Поделиться
HTML-код
  • Опубликовано: 9 фев 2025
  • En este video te mostrare un mecanismo existente en SQL Server con el cual puedes cargar masivamente datos por medio de un archivo de texto plano, por ejemplo un archivo CSV.
    Si quieres apoyarme y darme para una cerveza puedes hacerlo por aquí: paypal.me/Hecto...
    Puedes apoyarme desde 0.5 USD al mes uniéndote como miembro al canal aquí: / @hdeleonnet
    También puedes vía patreon: / powerhdeleon
    Todos mis podcasts: • Podcast #1 - ¿Cuál es ...
    Curso de MVC .Net: • Curso de MVC .Net C#| ...
    Curso de MVC Api .Net: • Curso de MVC API .Net ...
    Curso de facturación electrónica en c# .Net: • ¿Cómo convertir archiv...
    Todos mis videos sobre facturación electrónica: • ¿Cómo convertir archiv...
    La falta de respeto tanto a mí como a cualquier otra persona y el SPAM son razones de bloqueo en mi canal.
    "Copyright Disclaimer Under Section 107 of the Copyright Act 1976, allowance is made for "fair use" for purposes such as criticism, comment, news reporting, teaching, scholarship, and research. Fair use is a use permitted by copyright statute that might otherwise be infringing. Non-profit, educational or personal use tips the balance in favor of fair use"
    ---------------------------------------------------------------------------------------------------------------
    Sigueme en twitter ⇒ / powerhdeleon
    Sigueme en facebook ⇒ / hdeleon666
    Mi Sitio web ⇒ hdeleon.net
    #SQL #SQLServer #BulkInsert

Комментарии • 99

  • @hdeleonnet
    @hdeleonnet  4 года назад +31

    Si te ha gustado el video, puedes apoyarme con pulgar arriba ¡Muchas gracias!

    • @cesarl.c.847
      @cesarl.c.847 3 года назад

      Buena explicación. Recomiendo la herramienta "LoaderDataPlus" para llevar a cabo procesos de carga masiva desde archivos planos. Esta aplicación permite crear sintaxis para carga de información mediante archivos planos o mediante sintaxis SQL en: MariaDB, MySQL, PostgreSQL, Oracle, SQLSERVER y SQLite.

    • @OscarGarcia-rn7wy
      @OscarGarcia-rn7wy 3 года назад +1

      Hola Muy buen video, tengo una pregunta, si me conecto desde un equipo del trabajo a un servidor, se puede ejecutar este comando?, el sql esta instalado en el servidor y no he logrado que funcione

    • @cesarl.c.847
      @cesarl.c.847 3 года назад

      @@OscarGarcia-rn7wy Hola… te cuento que yo tengo instalada la versión más reciente de “LoaderDataPlus”, la versión 10. 1. 0. 1, la cual cuenta con mejoras específicamente para SQLserver. Yo exporte los datos en formato .SQL, ejecuté el script en management studio y subieron todos los datos, después exporte en formato .CSV tanto para carga con la herramienta BCP como para carga a través del comando BULK y también subió toda la data. Yo lo hice directamente un servidor SQLserver 2014 que tengo instalado en una máquina virtual donde también tengo instalado Oracle, y obviamente contaba con permisos de administrador. Es preciso tener en cuenta que el usuario con el cual se va conectar al servidor debe contar con permisos para realizar carga masiva y/o permisos para ejecutar los comandos que los scripts generados indican. Te recomendaría exportar inicialmente en formato .SQL, abrir el script generado, copiar el contenido y pegarlo directamente en management studio y ejecutarlo. NOTA: la versión más reciente de LoaderDataPlus requiere .NET Framework 4.6.1

  • @Algedibarrios
    @Algedibarrios 4 года назад +1

    Excelente video! Tu canal es un excelente recurso de referencia para l@s developers!
    GRACIAS!
    🤓👍

  • @SebastianGonzalez-rm8cm
    @SebastianGonzalez-rm8cm 3 года назад +3

    Excelente, rápido, conciso y clara la explicación!

  • @karlavasquez7849
    @karlavasquez7849 4 года назад +2

    Había jugado con datos masivos en python pero no en sql, excelente!!!

  • @Fernando.Mastropietro
    @Fernando.Mastropietro 4 года назад +2

    Genial , Hector... justo estaba buscando hacer eso desde un Excel.. gracia por compartir !!! abrazos

  • @DannyFJhonstonB
    @DannyFJhonstonB 4 года назад +4

    ¡Buen vídeo!
    Claro, preciso y conciso.

  • @zuumstellar975
    @zuumstellar975 4 года назад +3

    Cómo siempre excelente video... Una elegante y rápida forma de insertar datos a una tabla 👍👍

  • @oscarxchoriperro
    @oscarxchoriperro 4 года назад

    Qué haríamos nosotros los mortales sin un Dios como tú :)

  • @ZoreCrack
    @ZoreCrack 2 года назад +1

    Muchas gracias, recuerdo que en mysql workbench esta directamente esa función con un botón, pero con eso queda más claro como funciona jaja

  • @hernanalvaradoralde8700
    @hernanalvaradoralde8700 3 года назад +1

    Simplemente excelente, gracias eres un capo y muy amable por compartir. Saludos Hernan

  • @josecarlosalarcon3217
    @josecarlosalarcon3217 Год назад

    muy buen video de guía me ayudo a poblar mi tabla de manera cómoda y rápida

  • @BarriDuty
    @BarriDuty 4 года назад +1

    Gracias , yo en mi ignorancia utilizaba el wizard del sql management studio para importar desde el excel, luego conm el generador de scripts generaba la consulta en la cual estaba el insert de todas las filas, y eso lo ejecutaba en el servidor jajaja

  • @douglasperez3701
    @douglasperez3701 4 года назад +8

    Esto me voló la cabeza, genial!

  • @carlosgallegos789
    @carlosgallegos789 4 года назад +1

    Justo estaba buscando algo así para unas pruebas.
    +10

  • @marioramirez8235
    @marioramirez8235 3 года назад +1

    Excelente!!!! Tome su like y suscripción buen hombre!!!

  • @securecodingdevelopment5023
    @securecodingdevelopment5023 4 года назад +1

    Excelente Hector! grande master!

  • @Jordward
    @Jordward 3 года назад +1

    Dios!! esto es genial, gracias!!

  • @Angel-o5d2x
    @Angel-o5d2x 10 месяцев назад

    Genial contribución!!!, suscrito

  • @Abraham_Camargo
    @Abraham_Camargo 4 года назад +1

    Exelente aporte hermano, gracias

  • @nicolasminnicelli5689
    @nicolasminnicelli5689 3 года назад +1

    Muchas gracias fue de gran ayuda

  • @josuemedina4086
    @josuemedina4086 Год назад

    Muy buen tutorial. De gran ayuda
    Gracias!!

  • @pcdsmun2
    @pcdsmun2 5 месяцев назад

    trucasazaso !!! muchas gracias por la info

  • @yohanabello919
    @yohanabello919 10 месяцев назад

    Gracias amigo☺

  • @joseponce4012
    @joseponce4012 4 года назад +3

    Excelente video, gracias por el trabajo que haces compartiendo tus conocimiento. Crees poder subir un video de como importar la data proveniente de un csv a una tabla en mysql usando C# o python?

    • @hdeleonnet
      @hdeleonnet  4 года назад +2

      ruclips.net/video/KTMnUAlkmco/видео.html

  • @nicolasyanca7745
    @nicolasyanca7745 9 месяцев назад

    maquina👍👍👍

  • @cristians6896
    @cristians6896 4 года назад +1

    HdeLeón: Bulkcopy es la onda.
    Mi empresa: you don't have permission to use bulk load statement

  • @augustocarvalhochavez3192
    @augustocarvalhochavez3192 2 года назад

    Muy buen video una pregunta si quisiera que inserte en la tabla pero que ignore los que ya estan registrados. no se si me dejo entender quisiera hacer digamos un if no exists

  • @auxiliadorabermudez8607
    @auxiliadorabermudez8607 Месяц назад

    Hola.
    Ojalá me responda.
    Existe alguna manera de saber que script se ha ejecutado a nivel de sql en, algo así como.un log ?

  • @William1974-d3r
    @William1974-d3r 3 года назад +4

    Héctor que excelente está clase.
    También existe un modificador (update) masivo?

  • @carlososorio3206
    @carlososorio3206 3 года назад

    Hola. Si tengo un excel con 5 columnas , donde solo quiero insertar 3 columnas de ese excel y que los otros 2 datos faltantes sean enviados como parámetro en un procedimiento almacenado y así llenar la tabla con todos los datos. lo puedo hacer?

  • @hoberiusandovaleryuyu9013
    @hoberiusandovaleryuyu9013 3 года назад +1

    Hola buen aporte amigo, una consulta, como soluciono el error que me da, indica que hay campos vacíos. He eliminado los últimos en blanco del archivo csv y ahora sí los lee. Hay alguna forma de arreglar sin tener que entrar al archivo y eliminar los espacios al final de la data?

  • @manuelamoresgonzalez486
    @manuelamoresgonzalez486 3 года назад +1

    Como podría hacer este proceso pero en partes o Batch, es que se me queda sin memoria el SSMS ya que los datos que estoy cargando son demasiados. Saludos y ojala puedan ayudarme

  • @reynaldo1x
    @reynaldo1x 4 года назад

    De mucha utilidad! 🦉

  • @ccghy
    @ccghy 4 года назад

    Excelente 👏 ! 🍻

  • @lizethyunh8584
    @lizethyunh8584 4 года назад

    Buena tarde, disulpa una duda. hay una sintaxis para que haga la inserción de datos siempre y cuando no se encuentren ya cargados,y si encuentra un duplicado no se detenga o no marque error. Gracias

  • @heudyf
    @heudyf 4 года назад

    Excelente men.. Gracias.

  • @Cristian-ch9wp
    @Cristian-ch9wp 4 года назад +1

    excelente

  • @josemanuelmirandavalencia2109
    @josemanuelmirandavalencia2109 Год назад

    buen dia al ejecutar la carga con de un archivo csv con la instruccion BULK INSERT en sql server 2017 Mens. 2775, Nivel 17, Estado 12, Línea 22
    El servidor no admite la página de códigos 65001. como puedo solucionar.

  • @noehernandez5504
    @noehernandez5504 4 года назад +1

    Pero que pasa cuando está separada la BD del servidor cliente y no tenes acceso más que al puerto de BD?

  • @victorhugoespinoza2209
    @victorhugoespinoza2209 3 года назад

    Cómo lo hago cuando uno de los campos es del tipo date? No me permite la carga si no es con varchar

  • @juandamunoz2730
    @juandamunoz2730 9 месяцев назад

    Buen dia profe, me da un error que el 'BULK', no es valido en esa posicion y al ejecutar, me indica que hay un error de syntax, no se si es la version...

  • @carlosgarciatn2738
    @carlosgarciatn2738 3 года назад

    Cuando falla la carga desde SSIS ahi esta el BULK INSERT. Muchas gracias.

  • @Guacatate
    @Guacatate 8 месяцев назад

    ¿Oye una pregunta, existe una manera de hacer un bulk update similar a esta?

  • @doylestaleycornell
    @doylestaleycornell 3 года назад

    esta sentencia se puede implementar si en mi caso tengo los datos en un script?

  • @diego_solis
    @diego_solis 4 года назад

    Grande!

  • @Trance_Code
    @Trance_Code 4 года назад +3

    Hermosoooo... compa de igual forma serviria para MySQL verdad... solo por curiosidad pregunto yo, saludos desde Chile 😎🍻

  • @eudrysanchez1732
    @eudrysanchez1732 4 года назад

    Eres un crack 👏,

  • @tgun22
    @tgun22 4 года назад

    Hola Hector, Una consulta... ¿Cómo validar que en los campos no venga algún ataque de sql injection?? , tendrá seguridad con eso???..

  • @IrvingCoronaSerrano
    @IrvingCoronaSerrano Год назад

    No se puede realizar la carga masiva. El archivo '‪‪‪C:\Advantech\codigos.txt' no se puede abrir. Código de error del sistema operativo: 123(The filename, directory name, or volume label syntax is incorrect.).
    Cerre el documento e intentado poner en diferentes carpetas del disco local c

  • @VLearningni
    @VLearningni 3 года назад

    Gracias

  • @mariaguadalupecastillo7413
    @mariaguadalupecastillo7413 3 года назад

    Me funciona con la ruta local, pero quiero hacerlo con una carpeta compartida en un servidor y no lee los archivos

  • @gerardocardenas8805
    @gerardocardenas8805 4 года назад

    Gracias por el video, amigo pero tengo un problema al insertar una imagen me sale este error: Msg 2775, Level 17, State 12, Line 8
    The code page 65001 is not supported by the server.

  • @herbertsaldavaasencios5396
    @herbertsaldavaasencios5396 4 года назад +1

    Y yo usando macros XD, genial q directo y sencilla esta manera!

  • @andrair88
    @andrair88 4 года назад +1

    Buenísimo, conoces algo similar en Mysql

  • @Nico-su1ku
    @Nico-su1ku 4 года назад +1

    Muy buen video Hector, muchas gracias! Consulta, se puede usar cuando la PK es autoincremental?

  • @juliocesarbautista8081
    @juliocesarbautista8081 2 года назад +1

    buenas tardes en que formato de csv se debe guardar para importar con acentos a sql

  • @lalmar14
    @lalmar14 3 года назад

    Muy concretos los videos, siempre me han gustado. ¿Sobre replicación en SQL Server podrías considerar alguno? Saludos.

  • @darknesspurple
    @darknesspurple 2 года назад

    Hola. ¿Hay forma de que funcione poniéndolo en un procedimiento almacenado? estaba leyendo para implementar el bulk en SQL y llamarlo desde el backend..., pero me encontré en un foro con que no era posible porque el comando "BULK INSERT" no aceptaba nombres de archivo como variables. ¿Hay alguna forma de hacerlo?

  • @sergiosuarez8020
    @sergiosuarez8020 2 года назад +1

    Hola, alguien sabe si se puede insertar de manera masiva los datos pero no sería insertar si no Actualizar? Algo así como un "BULK UPDATE"?

  • @zurielchavez
    @zurielchavez 3 года назад

    Y si fueran múltiples archivos? 🤔, Ya tendría que usarse vs?

  • @ArthurFromPeru
    @ArthurFromPeru 4 года назад +1

    Hola, en un trabajo utilice el bulkinsert, y es super rápido para millones de registros. El problema que tenía era con el traslado de los datos, utilice un servicio WCF en vs2015 con streaming, pero me daba "Entity too large", que me recomiendas ?

  • @ryan-gmusic8157
    @ryan-gmusic8157 3 года назад

    habra un equivalente en PostgreSQL?

  • @Axiss_YT
    @Axiss_YT 3 года назад +1

    Hola soy nuevo en esto de programación quisiera saber como es el nombre de tu programa de SQL y como puedo importar y exportar archivos 👍❤️

  • @javiergonzalezgarduno8541
    @javiergonzalezgarduno8541 2 года назад +1

    Si mi archivo txt no tiene separador como la ,

  • @karelinafabra7470
    @karelinafabra7470 2 года назад

    Voy a usar esto para un procedimiento almacenado , el problema que tengo es que el archivo que tengo que impprtar todos los dias cambia de nombre, hay forma de que se puedan leer los datos del archivo poniendo la ruta, sin el nombre, o sea guardando el nombre en una variable o algo asi. Gracias

    • @darknesspurple
      @darknesspurple 2 года назад +1

      Hola. ¿Si te funciona poniéndolo en un procedimiento almacenado? estaba leyendo para implementar el bulk en SQL y llamarlo desde el backend..., pero me encontré en un foro con que no era posible porque el comando "BULK INSERT" no aceptaba nombres de archivo como variables. ¿Hay alguna forma de hacerlo?

  • @alexcham23
    @alexcham23 2 года назад

    y si el archivos csv tubiera diferentes hojas como se haria?

  • @renzoarrasco8424
    @renzoarrasco8424 2 года назад

    Se puede hacer esto en Oracle?

  • @luchingonzalez
    @luchingonzalez 4 года назад

    Estimado, Podrías ayudarme, cometí un error y necesito reemplazar de una de las columnas 500 de los 1000 valores que tengo, sin alterar el resto de las columnas. Saludos excelente video

  • @unaversionbeta
    @unaversionbeta 8 месяцев назад

    Cannot bulk load because the file could not be opened. Operating system error code 997(Overlapped I/O operation is in progress.).

  • @pinedasr.6894
    @pinedasr.6894 3 года назад

    amigo a mi me sale el siguiente error: Msg 4861, nivel 16, estado 1, línea 1
    No se puede realizar una carga masiva porque el archivo "D: \ ARCHIVO CURSOS 2020 \ ARCHIVO CURSOS 2021-I \ SISTEMAS COMPLEJOS \ DATOS \ ALUMNO.csv" no se pudo abrir. Código de error del sistema operativo 123 (El nombre de archivo, el nombre de directorio o la sintaxis de la etiqueta del volumen no son correctos.). espero me ayude

  • @highlanders40
    @highlanders40 2 года назад

    hubieses tocado el tema de las fechas

  • @neonagy
    @neonagy 3 года назад

    y si no tengo permisos en el servidor de crear una carpeta. ¿ya no me sirve?, ah! y otra tambien me deben
    activar el bulk insert, ya que por default no lo esta, mi usuario es restringido

  • @TheTatyru
    @TheTatyru 2 года назад

    Y POR EJEMPLO SI QUIERO ACTUALIZAR SOLO ALGUNAS COLUMNAS DE LA BASE DE DATOS

  • @MrJuank123
    @MrJuank123 4 года назад

    mind blown!!

  • @tacho3207
    @tacho3207 4 года назад

    yo ocupo el similar de MySql para cargar las listas negras del SAT en my BD

  • @migueltrinidad9706
    @migueltrinidad9706 4 года назад

    y se puede ejecutar con un procedimiento almacenado?

  • @Paul-po4md
    @Paul-po4md 3 года назад

    podrias hacer un ejemplo de como leer un excel por ejemplo con muchas hojas, ir recorriendo las hojas y leer los datos que contiene?

    • @Paul-po4md
      @Paul-po4md 3 года назад +1

      con .net en el visual studio

  • @fjr519
    @fjr519 4 года назад

    como seria Inserción MASIVA de datos, BULK INSERT en EntityFrameWork?

  • @Abner.mp4
    @Abner.mp4 4 года назад +1

    mucho mas facil el bulk, yo lo hacía con la herramienta de importación de sql server

  • @TheSharkot
    @TheSharkot 9 месяцев назад

    ¿De verdad aún usan Excel? Tssss tan arcaico como usar windows …

  • @thebroki6684
    @thebroki6684 2 года назад +1

    EXCELENTE VIDEO MASTER!!! MUCHAS GRACIAS!!!!!!

  • @carlosgallegos789
    @carlosgallegos789 4 года назад +1

    Justo estaba buscando algo así para unas pruebas.
    +10