🧙 La magia de los Stored Procedures | Procedimientos Almacenados

Поділитися
Вставка
  • Опубліковано 15 гру 2024

КОМЕНТАРІ • 86

  • @hdeleonnet
    @hdeleonnet  4 роки тому +18

    El propósito del video es comparar malas practicas comunes vs a SP, si desea ver una mejora y comparación más adecuada ir a la parte 2: ua-cam.com/video/B9yw925kdiw/v-deo.html
    Y bueno, si te ha gustado el video puedes apoyarme dejándome un Like y compartiéndolo en tus redes sociales, ¡Muchas gracias!

    • @edwinoswaldorodriguezleton5437
      @edwinoswaldorodriguezleton5437 4 роки тому

      Hector, si utilizo el entityframegmwork para la conexión a mi DB y utilizo procedimientos almacenados, ¿seguiría siendo igual de rápido? ¿podrías crear un tutorial como el de vetas real pero con procedimientos almacenados? O un video para saber como se estructura esta forma, con la api y el front-end angular

    • @edwinoswaldorodriguezleton5437
      @edwinoswaldorodriguezleton5437 4 роки тому +1

      Gracias por el video, has resuelto otra duda y seguiré programando con procedimientos almacenados. Estos videos cortos y bien explicados resuelven muchas dudas. Mil gracias.

    • @hdeleonnet
      @hdeleonnet  4 роки тому +1

      Puedes mezclarlos dependiendo cuando necesites el procedure, nada al extremo, todo con un objetivo, en el video estoy usando entity solo para ejecutarlo, y va bien

    • @edwinoswaldorodriguezleton5437
      @edwinoswaldorodriguezleton5437 4 роки тому

      Gracias Héctor. Bendiciones.

  • @naylord5
    @naylord5 4 роки тому +12

    Si vas a subir más videos de SP estaría genial si pudieras mostrar las CTE, o pasar argumentos al SP mediante EF, que son cosas muy interesantes. En espera de los siguientes videos muchas gracias por compartir!!

  • @benjaminruiz7300
    @benjaminruiz7300 4 роки тому +3

    He trabajado con stored procedures desde que empecé a programar, y cada vez descubro el increíble potencial que tienen.

  • @rodrigoluque1453
    @rodrigoluque1453 Рік тому +1

    🎉 muy buena explicación y muy buen versus! 🎉

  • @diegoestebancuenca437
    @diegoestebancuenca437 4 роки тому +1

    Muy buen aporte, toda la información me ha servidor para mi crecimiento profesional. Gracias

  • @YVNGKAOS
    @YVNGKAOS 4 роки тому +1

    Tus cursos de Alto nivel lógico, gran knowledge el que nos arrojas! Muchos respetos(Y)

  • @d-landjs
    @d-landjs 4 роки тому +1

    Excelente video bro!!! Super entendible acerca de lo valioso que es usar SP!!

  • @Algedibarrios
    @Algedibarrios 4 роки тому +3

    Gracias HdeLeon! Gran video como nos tienes acostumbrado, buen trabajo 😎👍

  • @luisazaneroc.557
    @luisazaneroc.557 4 роки тому +4

    Muy buena explicación, por ejemplo desarrolle una aplicación en PHP y SqlServer. Procesa casi 2 millones de registrados diarios, gran parte de la lógica es Transact-Sql. Saludos Héctor desde Perú 🇵🇪 🍻 🍻

  • @helloworldforever6378
    @helloworldforever6378 Рік тому +1

    Excelente video!
    En la empresa donde estoy veía lleno de SPs la DBs. Y yo ingenuamente pensando, y que hay del backend?? Pero ya quedó aclarado.
    Gracias padrinazo!

  • @Aprendder
    @Aprendder 4 роки тому +7

    Uff súper, esto sería una lista que se llame "prácticas que mejoran rendimiento..." o algo así, muchas gracias

    • @hdeleonnet
      @hdeleonnet  4 роки тому +3

      Si algo así haré 🤘

    • @CaloPocha
      @CaloPocha 4 роки тому +1

      Comparar ef, linq y sp performance en select con más de 1millon de registros

    • @CaloPocha
      @CaloPocha 4 роки тому +2

      También poder aconsejar en que casos usar ef, linq y sp

  • @luis89aguilar
    @luis89aguilar 4 роки тому +1

    No tenía idea que era tanto el cambio, buen video

  • @LordCraftMine
    @LordCraftMine 4 роки тому +6

    De hecho, son muy buenos. Prefiero trabajar con SP que con EF. Además, de que en mi área laboral, todo se encuentra en SP. Excelente vídeo.

    • @rubenmena4796
      @rubenmena4796 4 роки тому

      Pero también se pueden usar stored con EF

  • @jaimerojas6578
    @jaimerojas6578 4 роки тому +3

    Genial últimamente he estado más del lado de Front en el trabajo pero si es increíble la diferencia entre SP y Backend Logic ufff

  • @13680seba
    @13680seba 4 роки тому +2

    Excelente¡ gracias por los contenidos¡ Luego podrías hacer un vídeo sobre una api utilizando procedimientos almacenados? Gracias y saludos desde Córdoba, Argentina¡

  • @smith123456789ist
    @smith123456789ist 4 роки тому +1

    excelente video, deberia hacer mas asi, de buenas practicas, con ejemplos como lo hicite en este video

    • @hdeleonnet
      @hdeleonnet  4 роки тому +1

      Te recomiendo la parte 2 ua-cam.com/video/B9yw925kdiw/v-deo.html

  • @gastonnicolli3065
    @gastonnicolli3065 4 роки тому +3

    Yo hago sistemas de gestión, es lo que me gusta, y siempre lo hago sobre store.

  • @mrl1593
    @mrl1593 6 місяців тому

    Excelentee. Gracias por la info!

  • @lopuma1990
    @lopuma1990 Рік тому

    Hola, gracias por el vídeo, donde se pueden descargar está bd o tablas de ejemplos ??

  • @jluisyr
    @jluisyr 4 роки тому +3

    Buena demostración. Recomendaría el uso de SPs en casos que involucren procesamiento de altos volúmenes de información. La desventaja está en que se crea una dependencia con el motor de base de datos que utilizas en el momento y en caso de migrar a otro, los costos de migrar la lógica, sintaxis y pruebas son bastantes costosos.

    • @hdeleonnet
      @hdeleonnet  4 роки тому +1

      Es una herramienta que podría sacar de un apuro, más nada al extremo

  • @eduardojosegarcia258
    @eduardojosegarcia258 Рік тому

    gracias, muy instructivo

  • @AnBernabeP
    @AnBernabeP 4 роки тому +2

    Buen video, pero creo que se mejorarían los tiempos en EF, si ejecutas el método DB.SaveChanges() fuera del While(), ya que este método espera una respuesta de confirmación desde la BD y es muy lento hacerlo inserción por inserción.

    • @hdeleonnet
      @hdeleonnet  4 роки тому +4

      Fue a propósito ya que es lo que regularmente hace alguien que comienza, lo he dicho en el 2:38, ya tengo muchos videos donde hablo de como utilizar entity con info masiva

    • @felipeescudero8164
      @felipeescudero8164 4 роки тому +1

      Siempre tenía la duda si utilizar ef o sp, ya que todos se enfocan más por ef y dicen que sql no está diseñado para procesar logica

  • @yormanmendoza5366
    @yormanmendoza5366 2 роки тому

    es bueno tener un solo stored procedure para leer datos?

  • @theprogrammershouse7093
    @theprogrammershouse7093 6 місяців тому

    Se puede usar con mongoDB??

  • @aldonerio8036
    @aldonerio8036 4 роки тому +2

    Excelente hector solo para aportar algo cuando se tenien proyectos grandes y se cuentan con varios SP es mejor hacer usuarios-esquemas ya que la BD master tambien tiene configurado el "dbo" esto hace que las busquedas sean un poco mas rapidas y por si hay audditorias

  • @Bc7-w9k
    @Bc7-w9k 4 роки тому +1

    llegué acá por el versus con manuel, yo también soy team SP, aguante mi queridisimos PL PG SQL

  • @gustavomontanomorales5754
    @gustavomontanomorales5754 3 роки тому

    Hay alguna forma de obtener el porcentaje de avance de un stored procedure para mostrarlo en C#?

  • @JaimeBurciaga
    @JaimeBurciaga 4 роки тому +1

    ¿Cómo se integran los sp a un sistema MVC sin romper el patrón? ¿La persistencia de los datos se manejaría en el Controller o en Model? ¿Es posible hacer transacciones con el Entity Framework llamando a varios Stored Procedures?

    • @hdeleonnet
      @hdeleonnet  4 роки тому

      Controllers chiquitos son más bonitos, yo opto por inyectarlos con repository, es decir ya sea utilices orm o no orm, separar el proyecto de esta responsabilidad que te conecta a la bd, algo parecido a esto: ua-cam.com/video/IPA9hGapnxQ/v-deo.html
      Es posible hacer transacción con entity, si: ua-cam.com/video/EqY-k5jdHv4/v-deo.html

  • @jsaenzr
    @jsaenzr 4 роки тому +1

    Gracias por el aporte. Qué opinas de limitar la responsabilidad del SP a la operación perse en manipulación de data, dejando la lógica de dominio al sistema cliente del SP?

    • @jsaenzr
      @jsaenzr 4 роки тому

      Sería buenísimo si nos compartis estrategias de arquitecturas y organización de trabajo al usar objetos de BD como SP, Funcs y Triggers. En mi caso el rendimiento es un big win pero llevar un control y organización óptima entre proyectos, libraries, BD, etc se complica mucho, sobretodo xq las herramientas de este tipo para BD son caras o con bajo soporte. Gracias!

    • @hdeleonnet
      @hdeleonnet  4 роки тому +1

      en si son complementos, a mi me va bastante bien darle la responsabilidad de reporteo o de cosas que involucren mucha data a los SP, pero eso no quiere decir que todo lo dejare a los SP, son complementos

    • @hdeleonnet
      @hdeleonnet  4 роки тому +1

      si sería buen aporte, lo contemplare

  • @julerft8399
    @julerft8399 3 роки тому

    Pero si toda la logíca está en la DB, entonces no estaríamos cometiendo el error de acoplar nuestro dominio a la infraestructura? Que pasa si quiero pasar a MongoDB?

  • @diegodx
    @diegodx 4 роки тому +1

    Buen video, solo como recomendación para las siguiente comparaciones de velocidad que si lo puedes hacer de forma correcta así explicas las buenas prácticas y ves la real diferencia.
    este ejemplo como que no me alcanzo el disclaimer y fue como ponerme a correr contra CR7

    • @hdeleonnet
      @hdeleonnet  4 роки тому

      Otro videillo o que?

    • @diegodx
      @diegodx 4 роки тому

      @@hdeleonnet Entiendo que el video era hacer ver que la velocidad del SP era mejor que el ORM pero La verdad esperaba que en alguna parte del video este la forma correcta de EF (si ya vi tu video de la extension para EF) por ahí era yo solo que esperaba eso.
      otro videillo podría ser cómo actualizar los SP. Si tienes tu capa de datos con EF entonces si cambias por ejemplo el nombre de la columna Salary tendrias que ir manualmente a cambiarlos en todos los SP o hay alguna mejor forma hacerlo?

    • @hdeleonnet
      @hdeleonnet  4 роки тому +1

      se puede mapear el procedure para que sea un metodo del entity y no crudo como lo he mandado

    • @israelpina8496
      @israelpina8496 4 роки тому

      @hdeleon.net si estaría decente que la comparación fuera sido mas justa, digo por los que conocemos ambos "mundos" y en ocasiones tenemos el dilema de que elegir para cierto proyecto, por ejemplo el llamar el savechanges en cada vuelta, pudiendo llamarlo hasta el final todo el stack.

    • @hdeleonnet
      @hdeleonnet  4 роки тому

      ua-cam.com/video/B9yw925kdiw/v-deo.html

  • @jeffersonromario5936
    @jeffersonromario5936 Рік тому

    NO ENTENDI ESO DEL BACKEND, Y EL OTRO PROGRAMA, NO SE SUPONE QUE LA BD DE DATOS ES BACKEND, EXPLICACION PORFA.

  • @lllIIl
    @lllIIl 3 роки тому

    Sabes como ejecutar un procedimiento sin entity framework?, Solo usando ADO.NET sin comandos?

  • @freddvincent
    @freddvincent 3 роки тому

    *Genial buen video*

  • @andresflg
    @andresflg 4 роки тому +2

    Aveces en mis proyectos de .Net no sé si usar store procedures o código, es mucho más fácil corregir un error de un SP... pero siempre me pregunto si es bueno usar SP... la mayoría de gente opina que No.

    • @hdeleonnet
      @hdeleonnet  4 роки тому +2

      Siempre un procedure será mas rápido, usarlos cuando sean procesos que involucren mucha responsabilidad de la bd siempre va ser buena práctica

    • @israelpina8496
      @israelpina8496 4 роки тому +1

      El problema hoy en día es que hay mucho developer fancy, que solo sigue tendencias y lo peor de todo que las defienden a capa y espada como si fueran los creadores, pero como la tendencia anda muy fuerte en full back (desde hace unos añitos), estos "devs" hasta tienen el descaro de decir que los SP son obsoletos XD

  • @ricardogomez8007
    @ricardogomez8007 3 роки тому

    Excelente tuyo como siempre. Un favor, podrías explicar cómo usar EntityFramework con informix? Lo he intentado descargando paquetes de nuget pero no logro ver el privider en el wizard.

  • @luiscobian
    @luiscobian 4 роки тому +1

    Excelente un video, una pregunta, que pasa cuando la lista la tienes solamente en la programación, ¿hay una forma de mandarle al procedimiento la lista para que lo itere ?, se me ha presentado algunas veces y lo que he hecho a mi poco conocimiento que tengo es mandar un separado por comas y el mismo procedimiento cortarlo para hacer las insertions, esto en mysql, pero es posible en MS SQL mandar la lista?

    • @hdeleonnet
      @hdeleonnet  4 роки тому +1

      Claro ua-cam.com/video/RKMrWGk5TW0/v-deo.html

    • @luiscobian
      @luiscobian 4 роки тому

      hdeleon.net Excelente gracias

  • @diegobuenano5833
    @diegobuenano5833 4 роки тому

    Muy clara la explicación, pero una consulta, si tengo que hacer inserts a 3 tablas o más, como podría hacer un control de errores para que haga un rollback en caso que ocurra un error en alguna de las sentencias?
    Aparte de eso excelente el video :)

    • @hdeleonnet
      @hdeleonnet  4 роки тому

      Transacciones, con eso de hace todo o nada.

    • @diegobuenano5833
      @diegobuenano5833 4 роки тому

      @@hdeleonnet Pero como quedaría en el T-sql, no se si podrías hacer un video de como se haría un procedimiento de ese tipo, sería muy bueno para poder así controlar los errores desde el servidor de base de datos y mostrar el error en el fron :D

    • @hdeleonnet
      @hdeleonnet  4 роки тому +1

      Va

  • @faustinoolan9070
    @faustinoolan9070 4 роки тому

    Hola leon, un pregunta bueno varias jaja, yo hago mi base de datos desde EntityFramework, si no existe la crea, como puedo hacer el procedimiento almacenado desde ahi, o se hace ya directo en el SQLServer, y ya creado como puedo utilizarlo, tendria que hacer otra clase referenciandolo?, espero me haya explicado

    • @hdeleonnet
      @hdeleonnet  4 роки тому +1

      Lo que se hace con code first es mapear, es decir anexarlos manualmente al dbModelBuilder, voy a hacer un video de esto

  • @ezecel9
    @ezecel9 4 роки тому

    Puedo almacenar SP en archivos dentro de mi proyecto y ejecutarlos llamandolos desde ese archivo? O si o si deben estar almacenados en el servidor sql? Gracias!

    • @hdeleonnet
      @hdeleonnet  4 роки тому

      Eso haria vulnerable tu sistema. En gestor deben ir

    • @ezecel9
      @ezecel9 4 роки тому

      @@hdeleonnet ah ok gracias!!

  • @alexabc2012
    @alexabc2012 3 роки тому

    A MI EN LO PERSONAL ME GUSTA LA PROGRAMACION CON STORED PROCEDURE MAS RAPIDAS LAS CONSULTAS, oye hermano por casualidad no tienes un ejemplo de dashboard con store procedure en tres capas en ambiente Web form

  • @fenixturbo97
    @fenixturbo97 4 роки тому +1

    Jajaja si te manchaste con el código en c#, sin duda bien hecho queda en mucho menos tiempo.

  • @holmanalfonsobarbosaromero636
    @holmanalfonsobarbosaromero636 4 роки тому

    que tal hectos saludos desde colombia,
    he tratado de unirme a tu canal me rechaza mis tarjetas.
    Compa una pregunta da clases personalizadas?
    me gustaria poder contactarme contigo o tienes cursos en algun portal me gustaria aprender 100% asp.net.

    • @hdeleonnet
      @hdeleonnet  4 роки тому +1

      Que tal. Daba clases pero ahora por covid no tengo tiempo, a los miembros senior los tengo en un discord privado y ahi los apoyo en lo que puedo

  • @xoxies
    @xoxies 4 роки тому

    we no digas que van a morir, porque hasta para que retorne un count lo ocupo 😓

  • @jesusmendoza6536
    @jesusmendoza6536 4 роки тому

    El SaveChanges debe ir al final del bloque . Para ir solo una vez

    • @hdeleonnet
      @hdeleonnet  4 роки тому +2

      ua-cam.com/video/B9yw925kdiw/v-deo.html

  • @jarevalosv
    @jarevalosv 4 роки тому

    Un ejemplo enviado mails con un reporte HTML desde el motor SQL.