database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
PostgreSQL
Firebird
Oracle
Informix
Sybase
ㆍMS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
MS-SQL Q&A 4018 게시물 읽기
No. 4018
테이블에 관해서 질문드립니다.(2)
작성자
정명규
작성일
2008-01-30 13:32
조회수
3,306

vb와 mssql로 프로그램을 하고 있습니다.
전임자가  마스터 테이블을 4개로 나누어 만들었던것을  
통합해서 하나로 만들었습니다.
그러다보니 필드수나 테이블의 크기가 커졌습니다.
클라이언트수가 20여명 정도 되는데  시간차별로 
한사람씩 작업을 하면  제대로 동작을 하는것같은데
여러사람이 동시에 작업을 하면  입력및 삭제등이 
제대로 되지않고 데이터가 이상하게 됩니다.
화면에서는 삭제해서 저장을 했는데 다시 조회하면
삭제가 안된채로 다시 조회됩니다.
1. sql문을 조회시 시간이걸리면 뒤에 조회하는 사용자가
   계속 조회명령을 주면 Lock이 걸려 트랜잭션이 제대로 
   안되는것인지 (쿼리문이 오래걸리는것은 3초정도 걸립니다)
2. 마스터 파일이 커서 조회나 수정 삭제가 오래걸려서  
   뒤사용자가 계속 조회나 수정 삭제를 보내면 
   Lock 이 걸면 트랜잭션이 제대로 안되는것인지 
   답변을 부탁드립니다.

답변)
APPLICATION에서 어떻게 저장하는지? 
아무래도 마지막 저장할때 APPLICATION에서 보고 있는 상태 모두를 저장하는 듯한데요. 
A USER가 리스트를 불러오고, B USER가 불러온 상태에서 
A USER가 DATA하나를 지우고 저장
B USER는 그냥 저장 하면 아마도 A가 지운 데이터는 그대로 보이는 상태가 아닌지요.. 
저장되는 형태가 일괄적으로 저장이 되고 있다면 
UPDATE, INSERT의 BLOCK으로 인해 SELECT가 늦어지는 듯합니다. 

답변을 주셔서 감사하고 제가 서버프로그램쪽은 처음이라 다시한번 질문드립니다.
INSERT는 필드수와 상관이 없으므로 한번에 저장이 되는데
UPDATE는 화면에 보이는것 모두를 저장하다보니 필드수가 많아 4번으로 나누어 
UPDATE를 하고 있습니다.  
답변을 주신것으로 보아 수정된것만 저장을 시키면 문제가 해결될수 있는지요....
또 수정된것만 저장을 하려면 어떠한 방슥으로 해야 좋을지 다시한번 답변을 부탁드립니다.

이 글에 대한 댓글이 총 1건 있습니다.

이미 update부분은 에러 상황을 내포하고 있습니다. 
필드수가 많아 4회에 쪼개서 update를 한다면 
유저의 입장에서 2번 업데이트를 한 순간 데이터를 불렀다고 하면 
반은 정상, 반은 비정상의 데이터가 나올겁니다. 
여기서 저장을 누르면 
이미 먼저 업데이트를 누른 유저에 의해 온전하게 수정된 데이터와 후에 이 유저가 저장하는 것 사이에서는 
이미 데이터가 롤백하게 되기도 하는 이상한 시스템이 될듯한데요

.님이 2008-01-30 16:34에 작성한 댓글입니다. Edit
[Top]
No.
제목
작성자
작성일
조회
4021union에 관해서 질문드립니다. [1]
정명규
2008-01-30
3053
4020수정에 관해서 질문 드립니다. [1]
정명규
2008-01-30
2842
4019프로시저내에서 XP_CMDSHELL을 사용한후의 오류검출은 어떻게? [1]
안수철
2008-01-29
3394
4018테이블에 관해서 질문드립니다.(2) [1]
정명규
2008-01-30
3306
4017조회에 관해서 질문 드립니다. [1]
정명규
2008-01-30
2900
4016테이블에 관해서 질문 드립니다. [1]
정명규
2008-01-30
3274
4015mssql 저장 프로시져에 사용되는 암호화 기법에 대해 질문 드립니다. [1]
이승봉
2008-01-29
3622
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.022초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다