Использование VBscript для чтения из базы данных SQL

У меня настроена база данных SQL, в которой я хотел бы использовать vbscript для чтения из нее.

Вот код, который я пытаюсь использовать.

    SQL_Command_String = "SELECT * FROM Table1 JOIN Table2 WHERE Table1.ID = '5' AND Table2.Date LIKE '2011'"

Set Rs = SQLConnection.Execute(SQL_Command_String)
 DO WHILE NOT Rs.EOF
file1="./seminars/"&seminar_type&"/"&seminar_year&"/"&Rs("date")&"-"&Rs("year")&"_"&Rs("last")&".pdf"

семинар_год и семинар_тип - это константы, которые я инициализировал и объявил как "семинар_год = 2011" и "семинар_тип = раздел1".

Я полагаю, что SQL_Command_String испорчен с оператором LIKE. Я не уверен, правильно ли он используется. Я просто хочу, чтобы в нем находились ячейки, включающие 2011 год, но я не уверен, стоит ли включать подстановочные знаки для частей месяца и дня, и если да, то какие подстановочные знаки?

Когда я закомментирую объявление (Set) Rs, страница загружается нормально (за исключением того, что она не заполнила таблицу). Ошибка, которая отображается, когда включена: "На сервере произошла ошибка при обработке URL. Пожалуйста, свяжитесь с системным администратором. Если вы системный администратор, пожалуйста, нажмите здесь, чтобы узнать больше об этой ошибке".

Здесь вы просто перейдете на страницу Microsoft по работе с ОС IIS 7, о которой я уже рассказывал.

Я действительно озадачен этим, мои мысли о том, что у меня неверная команда SQL, возник конфликт с новой платформой, которая отсутствует, или я неправильно объявляю читателя, или, возможно, я не использую правильный тип читателя,

Я был бы признателен за любые идеи, которые есть у SO сообщества. Спасибо и, пожалуйста, знайте, я очень новичок в VBscripts

2 ответа

Решение

Попробуйте удалить AND Table2.Date LIKE '2011' расстаться и посмотреть, если это работает. Я предполагаю, что это потому, что ваш столбец даты имеет тип данных date или datetime, а не тип char. Я думаю, что LIKE будет работать только для типов данных char, поэтому вам нужно будет сравнить фактические даты, например Table2.Date >= '1/1/2011' AND Table2.Date <= '12/31/2011' или что-то подобное, в зависимости от базы данных, которую вы используете.

Я нашел оскорбительный код.

Set Rs = SQLConnection.Execute(SQL_Command_String)

Ключевое слово Set не может использоваться при использовании читателя. Я не нашел никакой документации, подтверждающей это, но удаление Set решило проблему.

Остальной код подключения правильный. Спасибо всем за ваш вклад.

Другие вопросы по тегам