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

我在 LogParser 的“类 SQL 引擎”中找不到对“RemoveNonAlphaNumCharacters”的任何引用。阅读 LogParser 2.2 附带的文档,LogParser 使用的 SQL 语言是“使用包含常见 SQL 子句的 SQL 语言的方言”。它不完全是 SQL。当我专门查看 SELECT 语句时,没有提到您正在使用的方法。

正如费尔南多建议的那样,您需要使用 LogParser 的内置函数(如“REPLACE_STR”)删除这些字符,因为 SQL 是由其自己的引擎在 LogParser 内执行的。

祝你好运。

于 2014-01-23T23:41:17.313 回答
0

您提供给 LogParser 的 SQL 查询在 LogParser 的内部“SQL”引擎中执行,并针对输入文件(您的 CSV 文件)运行,而不是针对输出数据库。输出数据库仅写入此查询的结果。

于 2013-06-03T16:23:02.553 回答
0

您可以将 RemoveNonAlphaNumCharacters 放在那里,该查询不会在您的数据库上运行,该查询将在 logparser 内运行,因此 RemoveNonAlphaNumCharacters 不存在。您必须稍后运行该函数(您可以通过参数传递要在导入数据库后运行的存储过程),或者使用 logparser 函数删除这些字符。

于 2013-10-05T03:51:38.443 回答