sql >> Databasteknik >  >> RDS >> Sqlserver

SQL Server - Hur man låser en tabell tills en lagrad procedur avslutas

Behövde det här svaret själv och från länken från David Moye, bestämde mig för detta och tänkte att det kunde vara till nytta för andra med samma fråga:

CREATE PROCEDURE ...
AS
BEGIN
  BEGIN TRANSACTION

  -- lock table "a" till end of transaction
  SELECT ...
  FROM a
  WITH (TABLOCK, HOLDLOCK)
  WHERE ...

  -- do some other stuff (including inserting/updating table "a")



  -- release lock
  COMMIT TRANSACTION
END


  1. Returnera en resultatuppsättning

  2. Hur får man första dagen i varje motsvarande månad i mysql?

  3. Frågor och svar från vår Parameter Sniffing-webinarserie

  4. Vad är storleken på kolumnen av int(11) i mysql i byte?