Inhoudsopgave:

Kan ik tabelvariabele doorgeven aan opgeslagen procedure?
Kan ik tabelvariabele doorgeven aan opgeslagen procedure?

Video: Kan ik tabelvariabele doorgeven aan opgeslagen procedure?

Video: Kan ik tabelvariabele doorgeven aan opgeslagen procedure?
Video: Table Valued Parameters in Stored Procedures | SQL | SQL Training Sessions 2024, Mei
Anonim

Gegevenstabel doorgeven als parameter aan opgeslagen procedures

  • Maak een door de gebruiker gedefinieerde tafel type dat overeenkomt met de tafel die u wilt bevolken.
  • Doorgang de door de gebruiker gedefinieerde tafel naar de opgeslagen procedure als een parameter .
  • Binnen in de opgeslagen procedure , selecteer de gegevens van de doorgegeven parameter en steek het in de tafel die u wilt bevolken.

Kun je op deze manier de tabelvariabele doorgeven aan de opgeslagen procedure?

Jij moet de READONLY-clausule gebruiken wanneer: binnenkomen de tafel gewaardeerd variabel in de procedure . Gegevens in de tabel variabele kan niet worden gewijzigd -- jij kan gebruik de gegevens in de tafel voor elke andere operatie. Ook, jij kan niet gebruiken tabelvariabelen als OUTPUT-parameters -- jij kan alleen gebruiken tabelvariabelen als invoerparameters.

Op dezelfde manier kunnen we de temp-tabel doorgeven als parameter aan de opgeslagen procedure? Temp-tabel passeren waarde aan opgeslagen procedure van een ander opgeslagen procedure . MAAR, merk op dat de procedure dat verwijst naar de tijdelijke tabel die er niet in is gemaakt zullen elke keer dat het wordt uitgevoerd opnieuw worden gecompileerd. (als de procedures zijn klein/niet vaak uitgevoerd, dit zullen geen probleem zijn).

Hiervan kunnen we DataTable doorgeven aan een opgeslagen procedure?

We kunnen passeren de Data tafel naar de Opgeslagen procedure ADO. Net gebruiken op dezelfde manier als: wij geleverd met behulp van het systeem. Gegevens. SqlParameter-klasse, maar er zijn een paar wijzigingen in het gegevenstype nodig. Normaal gesproken wij geef DbType van SqlParameter op voor een normale parameter zoals varchar, nvarchar, int enzovoort, zoals in de volgende code.

Wat is een door de gebruiker gedefinieerd tabeltype?

Gebruiker - gedefinieerde tabellen tabelinformatie vertegenwoordigen. Ze worden gebruikt als parameters wanneer u tabelgegevens doorgeeft aan opgeslagen procedures of gebruiker - bepaald functies. Gebruiker - gedefinieerde tabellen kan niet worden gebruikt om kolommen in een database weer te geven tafel . Gebruiker - gedefinieerde tabeltypen kunnen niet worden gewijzigd nadat ze zijn gemaakt.

Aanbevolen: