Назад | Перейти на главную страницу

Что делает -fixcolnames в парсере журнала 2.2?

Я использую Logparser 2.2, чтобы попытаться перенести файл .csv, заполненный информацией счетчика производительности, в базу данных SQL, и я использую следующую команду командной строки:

logparser "Select * into IISCounters from C:\Logfiles\IIS_Log.csv" -i:CSV -o:SQL -server:MJNHNX4 -database:PerfmonCounters -driver:"SQL Server" -fixcolnames:ON -createTable:ON

Файл, в котором он ищет, имеет довольно странные имена заголовков, например: \\perfiis06\network interfaceintel[r] pro_1000 mt network connection _2\bytes received/sec и \\perfiis06\network interfaceisatap.{3ab7a9d7-115b-4e2a-b7e3-613e431174a3}\bytes received/sec поэтому раньше я просто находил и заменял все не буквенно-цифровые символы и вводил данные. Однако я пытаюсь избежать этой работы в будущем (и я заметил, что парсер журнала имеет -fixcolnames переключатель, который якобы делает это).

Однако, когда я пытаюсь просто использовать этот переключатель, я получаю следующую ошибку:

[Microsoft][ODBC SQL Server Driver]Syntax error or access violation

Это не нарушение прав доступа, потому что он работает под администратором, который является администратором базы данных указанной базы данных, поэтому, скорее всего, это ошибка с именами столбцов. Возникает вопрос ... что именно сделал -fixcolnames делать?

Предполагается, что имена полей (извлеченные из входного файла) будут очищены, чтобы они соответствовали стандартному синтаксису SQL для имен столбцов. Однако это мало что говорит о вашей ошибке. Использование SQL Profiler может показать, что на самом деле происходит с взаимодействием с SQL Server.