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 1672 게시물 읽기
No. 1672
전각문자를 반각문자로 변환
작성자
장재남(jenam)
작성일
2004-11-23 18:09
조회수
7,253

안녕하세요.

답이 있을 것 같은데 못 찾았네요.

DB 에 들어 있는

'DSL601 FALLETFORK               '

이것을

'DSL601 FALLETFORK' 로 변경하고 싶습니다.

전각 문자로 저장이 된 상태이고 뒤의 빈 칸들은 rtrim 으로 제거가 안 됩니다.


오라클 같은 경우에 전각 문자(2byte) 를 반각 문자(1byte) 로 바꾸는 to_single_byte 함수가 있습니다.

MS-SQL 에서 이런 함수가 없는 것 같은데, 어떻게 하면 해결할 수 있는지 도움 부탁합니다.

그럼 수고하세요.

 

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


MS-SQL 서버 자체에는 오라클의 to_single_byte와 같은 함수는 없네요.
(아무리 찾아 보아도, 자료가 없네요.ㅠㅠ)

MS-SQL의 자체 함수는 아니지만,쉽게 처리하는 방법은
 bcp의 -C(대문자)를 이용하여 export후에 다시 import하시면 됩니다.
동일 테이블에 impoert하시는 것 보다는, 별도 테이블에 import후에
내용 확인 후에, 원본 테이블을 update하시는 것이 보다 안전하겠네요..

그리고 bcp의 -C옵션 말고도, -N과 -w도 참고해 보시면, 다른 상황에서
활용하실 수 있을 것 같네요.
참고로 한글 완성형 코드 페이지 번호는 949입니다.


--참고

http://msdn.microsoft.com/library/kor/default.asp?url=/library/kor/dntaloc/html/msdn_interntl.asp
내 '코드 페이지 및 정렬 순서 설치'

 

가을남자님이 2004-11-26 17:46에 작성한 댓글입니다. Edit
create function sss(@a nvarchar(4000))
returns nvarchar(4000)
as
begin
declare @i int
declare @str nvarchar
declare @result nvarchar(4000)
set @result = ''
set @str = ''
set @i=1

             while @i <= len(@a)
             begin
                        if unicode(substring(@a,@i,1)) = 12288
                        begin
                                 set @str = ''
                        end
                        else
                                begin
                                           set @str = nchar(unicode(substring(@a,@i,1))-65248)
                                end
           set @i = @i + 1
           set @result = @result + @str
           end
return @result
end


함수를 이용하면 되는데 어떻게 실행해야하는지?
데이터가 필들에 여러개가 있을경우 어케해야하지요?
최정호님이 2007-04-26 13:14에 작성한 댓글입니다.
이 댓글은 2007-04-26 13:16에 마지막으로 수정되었습니다. Edit
[Top]
No.
제목
작성자
작성일
조회
1677왕초보입니다. 쿼리문 질문인데요... [1]
왕초보
2004-11-28
3569
1676멀티 쓰레드 safety [2]
구현정
2004-11-26
3436
1673mysql 한글에 안되여. ㅠ.ㅠ 좀 알려주제여..
남재성
2004-11-24
3492
1672전각문자를 반각문자로 변환 [2]
장재남
2004-11-23
7253
1671연산결과 insert하기. [1]
sean
2004-11-23
3465
1670[아래글추가]네이밍에 대해서... [1]
sean
2004-11-22
2893
1669default sysdate 하려면 어캐하죠? 그리고 insert 로 서버쿼리불르니 에러가 나와요.. [1]
sean
2004-11-22
5085
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.017초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다