sql >> Databáze >  >> RDS >> Sqlserver

Měli byste provést více volání vložení nebo předat XML?

Bez urážky, ale přemýšlíš o tom.

Shromážděte své informace, až je budete mít všechny pohromadě, vytvořte transakci a vkládejte nové řádky jeden po druhém. Nedochází zde k žádnému snížení výkonu, protože transakce bude mít krátké trvání.

Problém by nastal, pokud byste vytvořili transakci na připojení, vložili řádek uživatele, pak počkali, až uživatel zadá další informace o profilu, vloží je, pak počká, až přidá informace o adrese, a pak je vloží, NEPOUŽÍVEJTE UDĚLEJTE TOTO , je to zbytečně dlouhotrvající transakce a způsobí problémy.

Nicméně váš scénář (kde máte všechna data) je správné použití transakce, zajišťuje integritu vašich dat a nebude nijak zatěžovat vaši databázi a sám o sobě nebude vytvářet uváznutí.

Doufám, že to pomůže.

P.S. Nevýhodou přístupu Xml je přidaná složitost, váš kód potřebuje znát schéma xml, vaše uložená procedura musí znát také schéma Xml. Uložená procedura má přidanou složitost analýzy xml a následného vkládání řádků. Opravdu nevidím výhodu extra složitosti pro to, co je jednoduchá krátkodobá transakce.



  1. Hibernate dialekt pro Oracle Database 11g?

  2. Může dosažení MAX_UTILIZATION for PROCESSES způsobit výjimku Nelze získat spravované připojení?

  3. Jak získat poslední pole v databázi Mysql pomocí PHP?

  4. SPUŠTĚNÍ SQL SERVERU 2008 NA VYTVOŘENÍ TABULKY