기본적으로 테이블이 내 코드에서 잠겨 있는지 확인해야합니다.SQL 서버의 테이블이 잠겨 있는지 확인 LOCK_TIMEOUT 0
DB에서 직접 실행하면 알 수 있습니다. 그렇지 않은 경우 테이블이 잠겨하거나 어느 경우
SELECT * FROM 'tablename' SET LOCK_TIMEOUT 0
나는 즉시 오류를 얻을 수 있습니다. 그러나 나는이 코드를 내 코드에서 호출 할 때 잠금을 해제하기 전에 일정 시간 기다리는 것으로 보인다. 이 쿼리를 호출하는 데 사용하는 코드는 다음과 같습니다.
SqlConnection conn = new SqlConnection(@"ConnectionString");
using(conn)
{
conn.Open();
var query = new SqlCommand("SELECT * FROM tablename SET LOCK_TIMEOUT 0", conn);
try
{
SqlDataReader reader = query.ExecuteReader();
// No lock
}catch (Exception)
{
// Deal with lock exception
}
}
나는 곧바로 알고 싶다. 어떤 제안? 아니면 이것을하는 더 좋은 방법이 있을까요?
이것은 트릭을 완료했습니다. 닻 – Boob