この投稿を読んでくれてありがとう。ログ パーサー 2.2 を使用して SQL を実行しようとすると、上記のエラーが発生します。
logparser sql ファイルの実行時の「エラー: 構文エラー:: SELECT キーワードがありません」
.
これは私がやったことです:
特定のフォルダーにあるログ ファイルを読み取り、更新されたデータを含む新しいテキスト ファイルを作成する SQL クエリを作成しました。
ログ パーサーを使用して、この SQL ファイルを実行するためのバッチ ファイルを作成しました。
"C:\Program Files\Log Parser 2.2\logparser.exe" ファイル:"C:\Temp\Concur\test\test.sql" -i:CSV -headerRow:OFF -fixedFields:OFF -o:CSV -headers:オフ"
バッチ ファイルを実行します。それはあるべきように機能します。新しいテキスト ファイルが作成されます。
問題
- test.sql ファイルのソース ファイルの場所を更新しました。同じソース ファイルを使用しましたが、別のフォルダーにコピーしました。
.... INTO * from 'C:\Temp\Concur\test\Working*.txt' ..
- バッチ ファイルを実行すると、上記のエラーが発生します。
logparser sql ファイルの実行時の「エラー: 構文エラー:: SELECT キーワードがありません」
. 3. 行った変更を元に戻し、ソース ファイルが元の場所を指すようになりました。バッチ ファイルを実行しても、同じエラーが発生します。
何か考えはありますか?
どうもありがとう。
SQL ファイル:
select
CASE TO_UPPERCASE(SUBSTR(EXTRACT_TOKEN(Filename, 4, '_'),0,2))
WHEN 'RE' THEN STRCAT(STRCAT(STRCAT(EXTRACT_PREFIX(EXTRACT_FILENAME(Filename), 3 ,'_'),'_Retry'),TO_STRING(ADD(TO_INT(SUBSTR(EXTRACT_TOKEN(Filename, 4, '_'),5,SUB(STRLEN(EXTRACT_TOKEN(Filename, 4, '_')),9))),1))),'.txt')
ELSE STRCAT(EXTRACT_PREFIX(EXTRACT_FILENAME(Filename), 3 ,'_'),'_Retry1.txt')
END AS newincrement
,Field1
,Field2
,Field3
,Field4
,Field5
,Field6
,Field7
,Field8
,CASE Field10
WHEN 'AU' THEN STRCAT('en_',Field10)
WHEN 'CA' THEN STRCAT('en_',Field10)
WHEN 'GB' THEN STRCAT('en_',Field10)
WHEN 'IE' THEN STRCAT('en_',Field10)
WHEN 'IN' THEN STRCAT('en_',Field10)
WHEN 'NZ' THEN STRCAT('en_',Field10)
WHEN 'US' THEN STRCAT('en_',Field10)
WHEN 'ZA' THEN STRCAT('en_',Field10)
ELSE 'en_GB' END AS Field9
,Field10
,Field11
,Field12
,Field13
,Field14
,Field15
,Field16
,Field17
,Field18
,Field19
,Field20
,Field21
,Field22
,Field23
,Field24
,Field25
,Field26
,Field27
,Field28
,Field29
,Field30
,Field31
,Field32
,Field33
,Field34
,Field35
,Field36
,Field37
,Field38
,Field39
,Field40
,Field41
,Field42
,Field43
,Field44
,Field45
,Field46
,Field47
,Field48
,Field49
,Field50
,Field51
,Field52
,Field53
,Field54
,Field55
,Field56
,Field57
,Field58
,Field59
,Field60
,Field61
,Field62
,Field63
,Field64
,Field65
,Field66
,Field67
,Field68
,Field69
,Field70
,Field71
,Field72
,Field73
,Field74
,Field75
,Field76
,Field77
,Field78
,Field79
,Field80
,Field81
,Field82
,Field83
,Field84
,Field85
,Field86
INTO
*
from
'C:\Temp\Concur\test\Working\*.txt'
バッチファイル:
"C:\Program Files\Log Parser 2.2\logparser.exe" file:"C:\Temp\Concur\test\test3.sql" -i:CSV -headerRow:OFF -fixedFields:OFF -o:CSV -headers:OFF