実現したいこと
SQLからタブ区切りのtsvファイルを作成したいです。
下記のbatファイルを実行すると、出力されたtsvファイルの途中で文字が途切れてしまいます。
bat
1SQLCMD -S tcp:%DB_HOST% -U %USER_NAME% -P %USER_PASSWORD% -d %DB_NAME% -i %TSV_PATH%XXX.sql -h -1 -W> %TSV_PATH%XXX.tsv -r 2>>%LOG%
XXX.sql
1SELECT 2REPLACE( REPLACE( A_NO, CHAR(13), ''), CHAR(10), '') 3+ CHAR(9) + REPLACE( REPLACE( B_NO, CHAR(13), ''), CHAR(10), '') 4+ CHAR(9) + CONVERT( NVARCHAR(MAX), A_FLG) 5+ CHAR(9) + CONVERT( NVARCHAR(MAX), B_FLG) 6+ CHAR(9) + REPLACE( REPLACE( NM_1, CHAR(13), ''), CHAR(10), '') 7+ CHAR(9) + REPLACE( REPLACE( NM_2, CHAR(13), ''), CHAR(10), '') 8+ CHAR(9) + REPLACE( REPLACE( AAA_TYP, CHAR(13), ''), CHAR(10), '') 9+ CHAR(9) + REPLACE( REPLACE( CRT_YMDHMS, CHAR(13), ''), CHAR(10), '') 10+ CHAR(9) + REPLACE( REPLACE( CRT_NM, CHAR(13), ''), CHAR(10), '') 11+ CHAR(9) + REPLACE( REPLACE( UPD_YMDHMS, CHAR(13), ''), CHAR(10), '') 12+ CHAR(9) + REPLACE( REPLACE( UPD_NM, CHAR(13), ''), CHAR(10), '') 13+ CHAR(9) + CONVERT( NVARCHAR(MAX), UPD_COUNTER) 14FROM XXX;
XXX.tsv
1XX-1 XXX-1 1 0 START189・・・7901
※正常な場合、STARTからENDまで(2000文字)表示されます。
STARTを含めて、241文字しか表示されません。
しかし、型をNVARCHAR(MAX)の箇所をNVARCHAR(200)にすると正常に出力されるようになりました。
XXX.sql
1SELECT 2REPLACE( REPLACE( A_NO, CHAR(13), ''), CHAR(10), '') 3+ CHAR(9) + REPLACE( REPLACE( B_NO, CHAR(13), ''), CHAR(10), '') 4+ CHAR(9) + CONVERT( NVARCHAR(200), A_FLG) 5+ CHAR(9) + CONVERT( NVARCHAR(200), B_FLG) 6+ CHAR(9) + REPLACE( REPLACE( NM_1, CHAR(13), ''), CHAR(10), '') 7+ CHAR(9) + REPLACE( REPLACE( NM_2, CHAR(13), ''), CHAR(10), '') 8+ CHAR(9) + REPLACE( REPLACE( AAA_TYP, CHAR(13), ''), CHAR(10), '') 9+ CHAR(9) + REPLACE( REPLACE( CRT_YMDHMS, CHAR(13), ''), CHAR(10), '') 10+ CHAR(9) + REPLACE( REPLACE( CRT_NM, CHAR(13), ''), CHAR(10), '') 11+ CHAR(9) + REPLACE( REPLACE( UPD_YMDHMS, CHAR(13), ''), CHAR(10), '') 12+ CHAR(9) + REPLACE( REPLACE( UPD_NM, CHAR(13), ''), CHAR(10), '') 13+ CHAR(9) + CONVERT( NVARCHAR(200), UPD_COUNTER) 14FROM XXX;
XXX.tsv
1XX-1 XXX-1 1 0 START189・・・5678END XXXXXXX P 20240101120000 XXX-XXXXXXX 20240101120000 (Unknown) 3
STARTからENDまでは2000文字あり、その後のカラムまですべて表示されました。
原因をお教えください。
補足情報(FW/ツールのバージョンなど)
Microsoft SQL Server 2019
Windows Server 2019 Datacenter 10.0 <X64>

回答2件
あなたの回答
tips
プレビュー