sql >> Database teknologi >  >> RDS >> Sqlserver

SQL Call Stored Procedure for hver række uden brug af en markør

Generelt leder jeg altid efter en sætbaseret tilgang (nogle gange på bekostning af at ændre skemaet).

Dette uddrag har dog sin plads...

-- Declare & init (2008 syntax)
DECLARE @CustomerID INT = 0

-- Iterate over all customers
WHILE (1 = 1) 
BEGIN  

  -- Get next customerId
  SELECT TOP 1 @CustomerID = CustomerID
  FROM Sales.Customer
  WHERE CustomerID > @CustomerId 
  ORDER BY CustomerID

  -- Exit loop if no more customers
  IF @@ROWCOUNT = 0 BREAK;

  -- call your sproc
  EXEC dbo.YOURSPROC @CustomerId

END


  1. BESTIL VED Alias ​​virker ikke

  2. SQLite introducerer UNIXEPOCH()-funktionen

  3. Hvordan indstiller du en standardværdi for en MySQL Datetime-kolonne?

  4. Hvad er fordele og ulemper ved at udføre beregninger i sql vs. i din ansøgning