어떤 사용자가 SQL서버에 어떤 검색쿼리를 요청합니다.
그런데, 그 쿼리가 5분이 걸립니다.
이런경우에 다른 사용자가 위의 쿼리가 진행되는 시간중에 다른 SQL 쿼리 요청을 하면
-------- ex ------------------------
10시 10분 - A사용자가 5분이 걸리는 SELECT 쿼리 요청
10시 11분 - B사용자가 INSERT 쿼리 요청
-----------------------------------
SQL서버는 기존 진행중인 5분이 걸리는 쿼리를 완료 후에, 두번째 요청인 쿼리를 실행하나요?
아님 멀티로 두가지 쿼리를 전부 실행하나요?
shared lock, exclusive lock을 찾아서 이해를 하셔야 할 것 같습니다.
좀더 오버하면 lock & trasaction(isolation level) 것을 찾아보길 바래요
결론적으로 말씀드리면
10시 10분 데이터를 읽고 있는데 10:11분 insert가 되는지?
select됩니다.
다만 11분에 입력되는 데이터는 trasaction모드나 순서적으로 10시 11분 다음에 select가 일어난다면
보일수도 아닐수도 있을 것 같습니다.