2013-05-29 3 views
0

Я пытаюсь использовать LogParser 2.2, чтобы попытаться преобразовать CSV в таблицу SQL, динамически создавая столбцы после удаления не буквенно-цифровых символов. Когда я использую следующую строку из командной строки, я получаю сообщение об ошибке:Logparser не распознает команду 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 '*' 

Что случилось с моим conmmand? RemoveNonAlphaNumCharacters является допустимой функцией в базе данных PerfMonCounters.

ответ

0

SQL-запрос вы даете LogParser выполняется во внутреннем «SQL» двигатель LogParser и побежал против входных файла (файл CSV), а не против базы данных по вывода. Выходная база данных просто записывается с результатами этого запроса.

0

Вы можете поместить здесь RemoveNonAlphaNumCharacters, этот запрос не будет запущен в вашей базе данных, этот запрос будет запущен внутри logparser, поэтому здесь не существует RemoveNonAlphaNumCharacters. Вы должны запустить функцию позже (вы можете передать по параметру хранимую процедуру, которая будет запущена после импорта в базу данных), или удалить эти символы, используя функции logparser.

0

Я не могу найти ссылку на «RemoveNonAlphaNumCharacters» в «SQL-Like Engine» LogParser. Чтение сопроводительной документации, поставляемой с LogParser 2.2, языком SQL, используемым LogParser, является «использование диалекта языка SQL, который включает в себя общие предложения SQL». Это не совсем SQL. Когда я смотрю конкретно на инструкцию SELECT, нет упоминания о методе, который вы используете.

Как предполагает Фернандо, вам необходимо удалить эти символы, используя встроенные функции LogParser, такие как REPLACE_STR, поскольку SQL выполняется в LogParser собственным движком.

Удачи.