Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

SQL Server - Как да заключите таблица, докато съхранената процедура приключи

Аз се нуждаех от този отговор и от връзката, предоставена от David Moye, реших това и реших, че може да е от полза за други със същия въпрос:

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. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Използване на INSERT INTO от SQL Server за промяна на данните на Salesforce

  2. Разделяне на стойности, разделени със запетая, в колони на множество редове в Sql Server

  3. Как да създадете таблица в SQL Server с помощта на заявка

  4. Избор на първи ред за група

  5. Познайте връзките между всички таблици на базата данни в SQL Server