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 4587 게시물 읽기
No. 4587
업데이트 하는 속도 올리기
작성자
julia
작성일
2008-12-27 00:01
조회수
5,697

안녕하세요.


테이블 A에 varchar(max)로 잡혀있는 column 이 하나 있는데요.

이 column에서 html tag를 찾아서 tag의 쌍이 완전하지 않으면, 맞춰서 넣는 그런 작업을 해야하는데요.

A테이블의 total count가 335,753 구요, 하루에 한번씩 돌려야 하거든요.

처음엔 vb로 프로그램해서 column이 null이 아닌 거 다 불러서, 한라인씩 update했는데요.

이게 시간이 엄청 걸리네요.

차라리 mssql안에서 업데이트 하는게 나을까요?

좀 연산이 복잡하더라두요?

혹시 이런 케이스 해보신 분 있으시면 조언 부탁드립니다.

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

트랜젝션을 사용하신다면


update 다 하신후 트랜젝션을 해주시기 바랍니다.


그러면 성능이 좀 더 올라갑니다.


그러면 프로파일러를 돌려서 어떤 구문에서 time loss가 많이 생기는지 보시고


쿼리를 좀 수정해주면 됩니다 ^^:


그럼

김병석(byung82)님이 2008-12-28 00:11에 작성한 댓글입니다.

varchar(max)칼럼의 html 문법체크를 쿼리로 하는건 바람직하지 않아 보입니다.

차라리 bcp나 dts로 csv파일을 출력 후 valid check 프로그램을 돌리는게 좋지 않을까요?

박형범(dreamwind)님이 2008-12-29 14:34에 작성한 댓글입니다.

방법을 찾았습니다.


c#으로 해결했는데요.

프로그램내에서 수정해야할 대상 field와 primary key field만 select 하여 Dictionary에 다 집어넣고,

루프 돌리면서 업데이트 하고 그결과를 stringbuilder에 담았다가 1000개마다 파일로 output을 해줍니다.

루프 다 돌아서 결과가 모두 파일에 담기면,

데이타베이스에 import해서 일괄 업데이트 해주면 끝!

이렇게 하니까 몇분 안걸리네요.


조언 주신분들 감사합니다.

julia님이 2009-01-30 00:42에 작성한 댓글입니다. Edit
[Top]
No.
제목
작성자
작성일
조회
4591MS-SQL에서 오라클의 describe 같은 명령있나요? [2]
권순용
2009-01-05
7540
4590외부접속은 되고 내부접속은 안되는 현상
두기
2008-12-31
6398
4588여러 테이블을 한 화면에서 보려면 쿼리문을 어떻게 작성해야하나요? [1]
박수영
2008-12-29
5426
4587업데이트 하는 속도 올리기 [3]
julia
2008-12-27
5697
45862개 이상의 컬럼으로 복합 기본키를 만든후 update 트리거 처리 [2]
박재연
2008-12-26
6392
4582안녕하세요 ^^ [1]
박성원
2008-12-24
5039
4581sql튜닝 부탁드립니다.ㅠㅠ [2]
sql
2008-12-23
5060
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.017초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다