sql >> Database >  >> RDS >> Sqlserver

Waarom kan geen globale tijdelijke tabel worden gemaakt of ingekort wanneer een opgeslagen procedure wordt aangeroepen vanuit C#-code?

Ik geloof dat hoewel het mogelijk is om te doen wat je beschrijft, het niet al te praktisch is, omdat het veel lastige timing veronderstelt:een sessie opent verbinding A en voert de procedure uit om de ##temp-tabel te maken, en die sessie houdt de verbinding open zolang verbindingen B, C, etc. toegang moeten hebben tot de tijdelijke tabel.

Je zou beter af zijn met een oplossing die een "permanente" tabel gebruikt, waar een rij wordt toegevoegd met een unieke identifier (int of GUID) voor elke "sessie", die waarde wordt geretourneerd door de initialisatie-aanroep (of kan op een andere manier worden opgehaald of geïdentificeerd) en gebruikt door alle volgende oproepen voor de sessie.



  1. MySQL:wat is de sleutelbuffer?

  2. Postgres sorteerprobleem

  3. MySQL-filterresultaten op maand en jaar

  4. Hoe precies werkt de werkronde in postgresql?