T-SQL: UN Exemplu Simplu Folosind un Cursor

Pentru mai multe informații despre cursoare, de asemenea, să ia o privire la libera interogare SQL de formare furnizate de către Steve Stedman.

în SQL Server cursorul este un instrument care este folosit pentru a itera peste un set de rezultate, sau pentru a bucla prin fiecare rând dintr-un set de rezultate un rând la un moment dat. Este posibil să nu fie cel mai bun mod de a lucra cu un set de date, dar dacă trebuie să faceți buclă row prin agonizarea row (RBAR) într-un script T-SQL, atunci un cursor este o modalitate de a face acest lucru.,Notă: Dacă sunteți nou la SQL Server și provin dintr-un fundal Oracle, trebuie să știți că cursoarele de pe SQL Server sunt diferite de cele de pe Oracle.

înainte de a crea cursorul, vom începe doar cu o interogare simplă care va ajunge să fie utilizată în cursor.

USE AdventureWorks2008;GOSELECT BusinessEntityID, Name FROM Sales.Store;

Care arată ceva de genul asta:

Acum, pentru a converti la un cursor, în loc de doar o instrucțiune select.

Pasul 1: declarați variabilele pentru a menține ieșirea din cursor.,

DECLARE @BusinessEntityID as INT;DECLARE @BusinessName as NVARCHAR(50);

Pasul 2: Declare cursor obiect;

DECLARE @BusinessCursor as CURSOR;

Pasul 3: Atribuie interogare pentru a cursorului.

SET @BusinessCursor = CURSOR FORSELECT BusinessEntityID, Name FROM Sales.Store;

Pasul 4: Deschideți cursorul.

OPEN @BusinessCursor;

Pasul 5: preluați primul rând.

FETCH NEXT FROM @BusinessCursor INTO @BusinessEntityID, @BusinessName;

Pasul 6: buclă până când nu mai există rezultate. În buclă imprimați ID-ul și numele din setul de rezultate și aduceți rândul net.pasul 7: închideți cursorul.,

CLOSE @BusinessCursor;

Pasul 8: Deallocate cursorul pentru a elibera memorie sau deschide seturi de rezultate.

DEALLOCATE @BusinessCursor;

Acum, pune totul împreună:

Acesta ar trebui să ofere o privire de ansamblu a modului de a construi rapid și de a folosi un cursor pe Microsoft SQL Server. Exemplul prezentat a fost rulat pe SQL Server 2008 și funcționează la fel pe SQL Server 2005 , SQL Server 2008r2, SQL Server 2012 sau SQL Server 2014.,

Iată un videoclip care arată o imagine de ansamblu similară a utilizării cursoarelor în TSQL.

Bucurați-vă!,

-Steve Stedman

Link-uri Conexe

  • Video: Introducere în TSQL Cursoare
  • Gratuit Interogare SQL Formare pentru 70-461 curs
  • Simplu Cursorul Exemplu : FORWARD_ONLY vs FAST FORWARD
  • Video de Instruire privind Utilizarea Cursoare Cu SQL Server
  • Mai multe detalii pe Cursoare
  • Folosind un CURSOR pentru a lista bazelor de date
  • Cursoare – datorii Tehnice
  • baza de Date de Listare Exemplu, cu un CURSOR

ai încercat baza de Date de Sănătate Monitor?

obținerea de ajutor de la Steve și echipa Stedman Solutions

suntem gata să vă ajutăm., Steve și echipa de la Stedman Solutions sunt aici pentru a vă ajuta cu nevoile dvs.Obțineți ajutor astăzi contactând Stedman Solutions prin formularul gratuit de consultare de 30 de minute.

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *