| 
			
			 | 
		#1 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
			
			
			Блокировка таблиц
			 
			
			Несколько не понятна ситуация с блокировкой таблиц при работе с SQL-сервером. Может кто подскажет что, или где еще почитать. 
		
		
		
		
		
		
		
	В каких случаях какое количество записей блокируется? Вот написано было в мануале, что если после LOCKTABLE делать поиск последней з-аписи, то заблокируется вся таблица. А можно ли определенную совокупность записей заблокировать? И в каких случаях происходит мертвая блокировка? И еще, когда именно снимается блокировка таблицы при использовании LOCKTABLE?  | 
| 
	
 | 
| 
			
			 | 
		#2 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
		
		 
			
			В SQL, если этого не делать специально, таблицы вообще никогда не блокируются, блокируются только записи. 
		
		
		
		
		
		
		
	Если после LOCKTABLE сделать FIND(+), то заблокируется recordset, состоящий из двух записей - текущей и предпоследней) Опеределенную совокупность можно заблокировать только через команды SQL, только зачем?  | 
| 
	
 | 
| 
			
			 | 
		#3 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
		
		 
			
			несколько цитат из документации 
		
		
		
		
		
		
		
	Архитектура Navision В SQL Server чаще всего используется блокировка записей, которая может быть преобразована в блокировку таблиц, если SQL Server решит, что этот способ предпочтителен. .... если вы добавляете записи в базу данных в формате SQL Server, необходимо не только дать команду LOCKTABLE перед чтением записей, но и немедленно считать последнюю запись в таблице. Это позволит заблокировать общую запись (common record), что будет эквивалентно блокировке таблицы. FAQ for the Microsoft SQL Option for Navision Q23: Это правда, что Microsoft SQL server снимает проблему блокировки, которая может произойти с базой данных Navision? A: Сервер SQL ведет себя подобно базе данных Navision в отношении этой проблемы с точки зрения табличной блокировки.  | 
| 
	
 |