0

LogParser 2.2 を使用して .csv を SQL テーブルに変換し、英数字以外の文字を削除した後に列を動的に作成しようとしています。コマンド プロンプトから次の行を使用すると、エラーが発生します。

logparser "SELECT.RemoveNonAlphaNumCharacters * INTO SQLCounters FROM 'C:\Users\Test\Desktop\SQL_Log_0.csv" -i:CSV -o:SQL -Server:MJNHNX4 -database:PerfMonCounters -driver:"SQL Server" -createtable:ON

私が見るエラーは

Error: Syntax Error: (from-clause): expecting FROM keyword instead of token '*'

私のコマンドの何が問題になっていますか?RemoveNonAlphaNumCharacters は、PerfMonCounters データベースで有効な関数です。

4

3 に答える 3

0

そこに RemoveNonAlphaNumCharacters を配置できます。そのクエリはデータベースで実行されず、そのクエリは logparser 内で実行されるため、RemoveNonAlphaNumCharacters はそこに存在しません。後で関数を実行するか (データベースへのインポート後に実行されるストアド プロシージャをパラメーターで渡すことができます)、または logparser 関数を使用してそれらの文字を削除する必要があります。

于 2013-10-05T03:51:38.443 に答える
0

LogParser の「SQL ライク エンジン」に「RemoveNonAlphaNumCharacters」への参照が見つかりません。LogParser 2.2 に付属のドキュメントを読むと、LogParser で使用される SQL 言語は「共通の SQL 句を含む SQL 言語の方言を使用する」ことになります。それは正確にはSQLではありません。特に SELECT ステートメントを見ると、使用しているメソッドについての言及はありません。

Fernando が示唆するように、SQL は独自のエンジンによって LogParser 内で実行されるため、「REPLACE_STR」などの LogParser の組み込み関数を使用してこれらの文字を削除する必要があります。

幸運を。

于 2014-01-23T23:41:17.313 に答える