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

VYBRAT Z uložené procedury?

Chápu, že je to více než 3 roky staré, ale pro případ, že by na tuto otázku někdo hledal odpověď. Musel jsem se vypořádat s touto platformou pro podávání zpráv, Izenda, a zjistil jsem, že s uloženými procedurami se zachází jinak než s výstupem z ikony „sql“. Zde je to, co se stane, když jako zdroj dat vyberete sp

  1. Je sestaven dynamický SQL
  2. Vytvoří dvě dočasné tabulky se všemi sloupci, které váš sp vrací
  3. První dočasná tabulka je naplněna výsledkem z vaší uložené procedury
  4. Druhá dočasná tabulka je vyplněna výsledkem plus hodnotou vašeho vstupního parametru.
  5. Je vytvořen příkaz, který se dotazuje na tyto dvě dočasné tabulky

Vezměte prosím na vědomí, že pokud do něj nezadáte parametr, spustí se s výchozí hodnotou prázdného řetězce '', což s největší pravděpodobností nevrátí žádná data.

Podle mého názoru je to hrozný nápad na zpracování uložených procesů, což je dobrý důvod, proč je plánujeme vypustit pro nějaké jiné řešení pro vytváření sestav.



  1. Databáze Oracle TNS Délka hodnoty pro klíč „zdroj dat“ překračuje svůj limit „128“

  2. MySQL - Dotaz na všechny uživatele BEZ schůzky

  3. MySQL - Duplicitní tabulka

  4. Dotaz na injekci MySQL