sql >> Databáze >  >> RDS >> Sqlserver

SQL Server - Jak uzamknout tabulku, dokud neskončí uložená procedura

Potřeboval jsem tuto odpověď sám a z odkazu poskytnutého Davidem Moyem, rozhodl jsem se pro to a myslel jsem si, že by to mohlo být užitečné pro ostatní se stejnou otázkou:

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. Doporučené postupy replikace PostgreSQL – část 1

  2. Jemné ladění Oracle DG40DBC

  3. Jak QUOTE() funguje v MariaDB

  4. Přístup odepřen uživateli „[email protected]“ (s použitím hesla:NE)