Синтаксис Rs.Open следующий: rs.Open Source, ActiveConnection, CursorType, LockType Source — это оператор sql, ActiveConnection — соединение с базой данных, CursorType — курсор, а LockType — тип блокировки данных.
Я часто разрабатываю asp, но не уверен в деталях. Вот краткое введение.
Обычно
Чтение данных осуществляется с помощью rs.open sql,conn,1,1.
Изменить данные: rs.open sql,conn,1,3
Удалить данные: напрямую используйте conn.execute("delete * from new, где id=1").
Синтаксис Rs.Open следующий: rs.Open Source, ActiveConnection, CursorType, LockType.
Source — это оператор sql, ActiveConnection — подключение к базе данных, CursorType — курсор, а LockType — тип блокировки данных.
Тип курсора
Постоянное описание
adOpenForwardOnly(value 0) (значение по умолчанию) открывает курсор только для прямого перемещения.
adOpenKeyset (значение 1) открывает курсор типа набора ключей.
adOpenDynamic (значение 2) открывает курсор динамического типа.
adOpenStatic (значение 3) открывает курсор статического типа.
Тип блокировки
Постоянное описание
adLockReadOnly (значение 1) (по умолчанию) Только для чтения — данные не могут быть изменены.
adLockPessimistic (значение 2) Консервативная блокировка (по одному). Поставщик выполняет работу, необходимую для обеспечения успешного редактирования записей, обычно путем блокировки записей источника данных сразу после редактирования.
adLockOptimistic (значение 3) Открытая блокировка (одна за другой). Поставщик использует открытую блокировку и блокирует записи только при вызове метода Update.
adLockBatchOptimistic (значение 4) Открытое пакетное обновление — используется в режиме пакетного обновления (в отличие от режима немедленного обновления).
Тип курсора
0 Курсор только вперед, можно просматривать записи только вперед, не поддерживает разбиение по страницам, набор записей, закладка
1 Курсор набора ключей. Изменения, внесенные в записи другими пользователями, будут отражены в наборе записей, но записи, добавленные или удаленные другими пользователями, не будут отражены в наборе записей. Поддержка пейджинга, набора записей, закладок
2 Динамические курсоры обладают наиболее мощными функциями, но при этом потребляют больше всего ресурсов. Изменения, внесенные пользователями в записи, добавление или удаление записей, будут отражены в наборе записей. Поддерживает полнофункциональный просмотр.
3. Статический курсор — это всего лишь снимок данных. Изменения, внесенные пользователем в записи, добавление или удаление записей, не будут отражены в наборе записей. Поддерживает движение вперед или назад
Тип блокировки
LockType — это тип блокировки набора записей, его значение:
1 Тип блокировки, по умолчанию, только для чтения, изменения невозможны.
2 Блокируйте записи сразу при редактировании, самый безопасный способ
3 Набор записей блокируется только при вызове метода Update, а другие предыдущие операции по-прежнему могут изменять, вставлять и удалять текущую запись.
4 Записи не блокируются при редактировании, а также изменении, вставке и удалении
rs.open sql,conn,3,2
Эти два курсора являются курсорами, их конкретные функции:
RS.OPEN SQL,CONN,A,B
А:
ADOPENFORWARDONLY(=0)
Только чтение, текущая запись данных может быть перемещена только вниз.
ADOPENKEYSET(=1)
Только для чтения, текущую запись данных можно свободно перемещать.
АДОПЕНДИНАМИЧЕСКИЙ(=2)
Доступен для чтения и записи, текущая запись данных может свободно перемещаться.
АДОПЕНСТАТИЧЕСКИЙ(=3)
Доступен для чтения и записи, текущие записи данных можно свободно перемещать, можно просматривать новые записи.
Б:
ТОЛЬКО АДЛОКЧТЕНИЕ(=1)
Тип блокировки по умолчанию заключается в том, что набор записей доступен только для чтения и записи не могут быть изменены.
АДЛОКПЕССИМИСТИЧЕСКИЙ(=2)
Пессимистическая блокировка: при изменении записи поставщик данных попытается заблокировать запись, чтобы гарантировать ее успешное редактирование. Как только начинается редактирование, запись блокируется.
АДЛОКОПТИМИСТИЧНЫЙ(=3)
Оптимистическая блокировка: запись не блокируется до тех пор, пока обновленная запись не будет отправлена с использованием метода Update.
АДЛОКБАТЧОПТИМИСТИЧНЫЙ(=4)
Пакетная оптимистическая блокировка позволяет изменять несколько записей, а записи блокируются только после вызова метода UpdateBatch.
Если нет необходимости изменять записи, следует использовать набор записей, доступный только для чтения, чтобы поставщику не нужно было выполнять какое-либо обнаружение.
Для общего использования оптимистическая блокировка, вероятно, является лучшим вариантом, поскольку записи блокируются только на короткий период времени.
Данные в это время обновляются. Это снижает использование ресурсов.
Подводя итог:
sql,conn,1,1 означает, что обновления не разрешены, и обычно используется для операций запроса.
sql,conn,1,3 означает, что обновления разрешены и обычно используются для операций вставки, обновления и удаления.