티스토리 뷰
원본 테이블에서 다른테이블을 생성하며 가져올때
가장 문제되는 부분이
이 문제를 해결하려면
제약이 없는 테이블을 (테이블명 뒤에 _backup 붙이던지 해서 바꾸어)생성하고
그곳에 데이터들을 SQL Managenent Studio를 이용하여 가져오기로 넣은 뒤
최종적으로 만들려는 테이블을 제약조건을 똑같이 하여 만든 후
제약없이 만든 테이블을 커서를 이용하여 루핑돌며 최종테이블에 넣어준 후
제약없는 테이블 Drop 하면 되겠다.
가장 문제되는 부분이
- identity(1,1) 과 같은것
- NULL
- default('')
이 문제를 해결하려면
제약이 없는 테이블을 (테이블명 뒤에 _backup 붙이던지 해서 바꾸어)생성하고
그곳에 데이터들을 SQL Managenent Studio를 이용하여 가져오기로 넣은 뒤
최종적으로 만들려는 테이블을 제약조건을 똑같이 하여 만든 후
제약없이 만든 테이블을 커서를 이용하여 루핑돌며 최종테이블에 넣어준 후
제약없는 테이블 Drop 하면 되겠다.
declare CURSOR_MOVE CURSOR FOR select [키필드] from [최종테이블] ORDER BY [키필드] declare @num bigint open CURSOR_MOVE fetch next from CURSOR_MOVE into @num while @@FETCH_STATUS = 0 BEGIN insert into [최종테이블] ([필드들]) select [필드들] from [제약없는테이블] where num=@num fetch next from CURSOR_MOVE into @num END close CURSOR_MOVE deallocate CURSOR_MOVE -- 임시테이블은 제거 drop table [제약없는테이블] go -- 테이블 이름 변경 --EXEC sp_rename '[기존테이블명]', '[변경할테이블명]' --go
'SQL > MS-SQL' 카테고리의 다른 글
COUNT(*) 대체하여 Where 절에 있는 Like/CharIndex 줄이기 (0) | 2011.06.29 |
---|---|
[저장프로시저] '입력값이 NULL 입니다' 에 대처하는 isNull() (0) | 2011.06.29 |
[MS-SQL] 암호화 (SHA1, MD5 ...) (0) | 2010.11.15 |
MS-SQL datetime 형식의 골치거리 오전/오후 헤쳐나가보기 (0) | 2010.07.17 |
MS SQL Server Management Studio 에서 1433이 아닌 포트번호로 연결 (0) | 2010.04.06 |
댓글
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
TAG
- Mac
- IE
- ASP
- javascript
- Linux
- Android
- nginx
- git
- 한글
- PHP
- Debug
- sencha touch
- mssql
- centos
- iphone
- API
- iis
- 워드프레스
- Docker
- classic asp
- Wordpress
- IOS
- 안드로이드
- CSS
- nodejs
- JSON
- laravel
- macos
- JQuery
- Prototype
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |
글 보관함