전체적으로 givem 데이터베이스의 선택된 테이블을 .csv 파일로 내보낼 수있는 내보내기 메커니즘을 개발했습니다. bcp
또는 sqlcmd
을 사용하여이 작업을 수행 할 수 있습니다. 큰 테이블 (> 1-2GB)의 경우, 테이블을 미리 정해진 사용자 지정 크기 (예 : 200MB)의 여러 .csv 파일로 분할하려고합니다.크기에 따라 데이터베이스 테이블 분할 및 내보내기
사용자가 지정한 크기를 구성하는 행 수는 어떻게 결정합니까? 이것은 내가 올바른 분할 .CSV 크기를 얻을 수있는 TOP N
절을 다음
DECLARE @sql VARCHAR(8000);
SELECT @sql = 'sqlcmd -S' + @@SERVERNAME + ' -E -Q ' +
'"SELECT * FROM Ia.dbo.[Episode];" -o "F:\aaData\Test2.csv" -s"," -W';
EXEC master..xp_cmdshell @sql;
같은 sqlcmd
명령을 사용할 수 있습니다. 일괄 처리를 사용하여 행을 계산해야 할 수도 있고,이를 수행하는 더 좋은 방법이 있습니까?
파일을 후 처리 단계로 분리하는 매우 정교한 클래스를 작성했습니다. 이 아이디어에 기반을두고 신속합니다! 시간 내 줘서 고마워... – MoonKnight