Будь то rs.open sql, conn или conn.execute(sql) [здесь SQL — удаление, обновление, вставка] после выполнения будет возвращен закрытый набор записей rs.open sql, conn: если sql — это удаление, обновление. , вставить Будет возвращен закрытый набор записей. Во время использования не записывайте rs.close, а затем пишите rs.close в конце файла.
Может быть несколько наборов записей: rs1.open sql1,conn посередине, и последний закрывает набор записей: rs.close rs1.close
conn.execute(sql) Если sql удаляет, обновляет или вставляет, он вернет закрытый набор записей. Не используйте rs.close во время использования и напишите rs.close в конце файла.
В середине может быть несколько наборов записей: rs1.open sql1,conn, а последний закрывает набор записей: rs.close rs1.close.
Если sql обновляет, вставляет и удаляет, вы должны использовать conn.execute(sql) или можете опустить скобки conn.execute sql.
Если sql является оператором выбора, вам следует использовать set rs=conn.execute(sql). Скобки должны быть обязательными и не могут быть опущены: это связано с характеристиками vbscript с возвращаемым значением.
Вызов должен быть заключен в круглые скобки, а вызов без возвращаемого значения в скобках не нуждается.
Примечание. Независимо от того, является ли это rs.open sql, conn или conn.execute(sql) [здесь SQL — удаление, обновление, вставка], после выполнения будет возвращен закрытый набор записей.
Другими словами, если sql является оператором вставки, обновления или удаления, то RS в наборе rs=conn.execute(sql) не имеет смысла.
1.conn.execute
sql=select * от администратора, где имя пользователя='xiaozhu'
установить rs=conn.execute(sql)
Автоматически закрывать набор записей после выполнения
Наконец, вам просто нужно закрыть соединение
конн.закрыть
установить соединение = ничего
2.rs.open
установите rs=server.createobject(adodb.recordset)
sql=select * от администратора, где имя пользователя='xiaozhu'
rs.open sql,conn,1,1
Некоторые параметры вы можете установить самостоятельно, а именно методы блокировки и перемещения курсора.
Наконец, закройте набор записей и соединение.
RS.закрыть
установить rs=ничего
конн.закрыть
установить соединение = ничего
3.команда.выполнить
sql=select * от администратора, где имя пользователя='xiaozhu'
установить rs=command.execute(sql)
************************************************* * ***************************
1.
set rs=conn.execute (если это оператор выбора) получает rs.recordcount=-1
rs.open sql,conn (sql — это оператор выбора) Полученный rs.recordcount — это обычное количество записей.
2.
rs.open — открыть базу данных. conn.execute — выполнить инструкции SQL.
set rs=conn.execute(insert,update,delete) возвращает закрытый набор записей
set rs=conn.execute(select) возвращает незакрытый набор записей
3.
CONN.EXECUTE(SQL,RowsAffected,C)
Значение параметра:
Значением SQL может быть оператор SQL, имя таблицы, имя хранимой процедуры или любая строка, приемлемая для поставщика данных. Для повышения производительности лучше всего указать соответствующие значения параметров C.
Необязательный параметр RowsAffected вернет число, затронутое после выполнения запроса INSERT, UPDATE или DELETE. Эти запросы вернут закрытый объект Recordset.
Запрос SELECT вернет значение RowsAffected, равное -1, и вернет открытый набор записей с одной или несколькими строками содержимого.
4.
conn.execute sql подходит для использования, когда нет необходимости возвращать объект набора записей, например следующий код:
sql=удалить из enews, где id=&cstr(id)
conn.execute sql
Если вам нужно вернуть объект набора записей, используйте следующий код:
sql=выбрать из новостей, где id=&cstr(id)
установите rs = conn.execute(sql)
Если вы удалите скобки здесь в выполнении (sql) (то есть установите rs = conn.execute sql), появится сообщение об ошибке, например, оператор не завершился. Я посмотрел формат синтаксиса и обнаружил, что их два. Подробности следующие:
Формат 1: Имя объекта соединения. Выполнить (команда SQL).
Формат 2: Имя объекта соединения. Выполнить (имя таблицы данных).
Как видно из приведенного выше формата, инструкции sql после выполнения заключаются в круглые скобки, но на самом деле, если вы выполняете такие операции, как удаление или изменение, вам не нужно включать инструкции sql в круглые скобки, чтобы выполнить их правильно. это? Чтобы выполнить запрос, вы должны указать команду sql в скобках, иначе возникнет ошибка. Я прочитал все имеющиеся руководства по ASP, и ни в одном из них не упоминалась эта проблема. Я искал и не нашел ответа. Пожалуйста, дайте мне несколько советов. по причине. Не говорите только о грамматических правилах. Надеюсь получить правильный ответ, спасибо.