Átadhatunk-e tömböt az SQL Server tárolt eljárásának?
Átadhatunk-e tömböt az SQL Server tárolt eljárásának?

Videó: Átadhatunk-e tömböt az SQL Server tárolt eljárásának?

Videó: Átadhatunk-e tömböt az SQL Server tárolt eljárásának?
Videó: Section 8 2024, Lehet
Anonim

Nincs támogatás sor ban ben SQL szerver de több módja is van annak passzolhatsz gyűjtemény a tárolt proc.

Ezen kívül át tudjuk adni a listát tárolt eljárásban?

Nem, tömbök/ listák lehet nem lehet közvetlenül átadni az SQL Servernek. A következő lehetőségek állnak rendelkezésre: Elhaladó egy vesszővel tagolt lista majd miután az SQL-ben van egy függvény, felosztotta a lista . A vesszővel elválasztva lista lesz valószínűleg Nvarchar()-ként adják át

Másodszor, hogyan lehet vesszővel elválasztott karakterlánc értéket átadni egy tárolt eljárásnak SQL-ben? A következő tárolt eljárás lekéri az alkalmazottak rekordjait, amelyekhez az azonosítók vesszővel elválasztott (elválasztott) karakterlánc segítségével kerülnek átadásra.

  1. ELJÁRÁS LÉTREHOZÁSA GetEmployees.
  2. @EmployeeIds VARCHAR(100)
  3. MINT.
  4. KEZDŐDIK.
  5. SELECT Keresztnév, Vezetéknév.
  6. Az alkalmazottaktól.
  7. WHERE EmployeeId IN(
  8. SELECT CAST (elem EGÉSZ SZÁMként)

Következésképpen miért ne lehetne egy nagy tömböt érték alapján átadni egy eljárásnak?

Az ok, amiért te tud 't pass an sor által érték az mert ott van nincs konkrét módja annak nyomon követésére tömbök mérete olyan, hogy a függvényhívás logikája legyen lenne tudja, mennyi memóriát kell lefoglalni és mit kell másolni. te átmehet osztálypéldány, mert osztályok van kivitelezők. A tömbök nem.

Mik azok a táblázatban értékelt paraméterek?

A asztal - értékes paraméter egy paraméter val,-vel asztal típus. Ezt használva paraméter , több sor adatot küldhet egy tárolt eljárásnak vagy egy paraméterezett SQL parancsnak egy asztal . A Transact-SQL segítségével hozzáférhetünk az oszlopértékekhez asztal - értékes paraméterek.

Ajánlott: