У меня есть сервер под управлением Windows Server 2003 с IIS 6.0. Мое классическое приложение ASP прекрасно работает. Я пытаюсь заставить мое приложение работать на IIS 7 и Windows Server 2008 на этом новом сервере, чтобы моя компания захотела выполнить миграцию, однако я пытался бороться с запросом на файл CSV.Ошибка при запросе файла CSV
Код один и тот же в обеих средах, и, хотя он отлично работает на моей машине IIS 6, он отказывается предоставить мне доступ к моему RecordSet, сгенерированному запросом.
Вот код:
Set conExcel = Server.CreateObject("ADODB.Connection")
conExcel.Open "Provider=Microsoft.Jet.OLEDB.4.0;DATA SOURCE=" & Server.MapPath("xls\") &";Extended Properties=""Text;HDR=Yes;IMEX=1; ImportMixedTypes=Text;FMT=Delimited(;)"""
strSQL="SELECT * FROM ["& strFile &"]"
set SQL = Server.createobject("ADODB.Recordset")
SQL.Open strSQL,conExcel
Файл CSV содержит несколько столбцов. Один из них называется NAME. код, чтобы сохранить его в переменной заключается в следующем:
strName = SQL("NAME")
Я получаю ошибку только тогда, когда работает на IIS 7 является классическим «Элемент не может быть найден в коллекции, соответствующий запрашиваемым именем или порядковым». Я не нашел ничего в Интернете, связанных с изменениями в IIS 7, которые повлияют на эту функцию. Извините, за длинную статью.
Когда вы скопировали файл csv на новый сервер, был ли файл schema.ini, который нужно было переместить с ним. Подробнее см. Здесь. https://msdn.microsoft.com/en-us/library/ms709353%28v=vs.85%29.aspx – John
Нет, не было. Док говорит, что это действительно не нужно. Если у вас нет более сложных данных. Мой просто текст. Это верно? – Lightspeed