これは、ログをデータベースに挿入するためのコードです。
SET @SQL = 'BULK INSERT #tbl_Temp FROM '
+ ''''
+ @PathFileName
+ ''''
+ ' WITH (FIELDTERMINATOR ='
+ ' ''|'''
+ ','
+ ' ROWTERMINATOR = '
+ ' ''|\n'''
+ ','
+ ' CHECK_CONSTRAINTS, KEEPIDENTITY, MAXERRORS = 30)'
基本的に、一括挿入するログ ファイルはパイプ文字で区切られています。上記のコードは正常に機能しますが|
、暗号化されたフィールドなど、1 つのフィールドの値にパイプが含まれている場合、この SQL コードはそれを処理できません。
この種の問題を回避する方法は何ですか?
BULK INSERT が機能しない場合、ログ形式は既に運用されているため、ログ形式を変更せずに解決する必要があります。