Ya sea rs.open sql, conn o conn.execute(sql) [SQL aquí es eliminar, actualizar, insertar] después de la ejecución, se devolverá un conjunto de registros cerrados rs.open sql, conn: si sql se elimina, actualice. , inserte Se devolverá un conjunto de registros cerrados. Durante el uso, no escriba rs.close y luego escriba rs.close al final del archivo.
Puede haber varios conjuntos de registros rs1.open sql1,conn en el medio y el último cierra el conjunto de registros: rs.close rs1.close
conn.execute(sql) Si sql se elimina, actualiza o inserta, devolverá un conjunto de registros cerrado. No utilice rs.close durante el uso y escriba rs.close al final del archivo.
Puede haber varios conjuntos de registros en el medio: rs1.open sql1,conn, y el último cierra el conjunto de registros: rs.close rs1.close.
Si el sql es actualizar, insertar, eliminar, debe usar conn.execute(sql) o puede omitir los corchetes conn.execute sql
Si sql es una declaración de selección, debe usar set rs=conn.execute(sql). Los corchetes deben ser obligatorios y no pueden omitirse: esto se debe a las características de vbscript, con valor de retorno.
La llamada debe estar entre paréntesis y la llamada sin valor de retorno no necesita paréntesis.
Nota: Ya sea rs.open sql, conn o conn.execute(sql) [SQL aquí es eliminar, actualizar, insertar], se devolverá un conjunto de registros cerrado después de la ejecución.
En otras palabras, si sql es una instrucción de inserción, actualización o eliminación, entonces el RS en set rs=conn.execute(sql) no tiene significado.
1.conn.ejecutar
sql=seleccionar * del administrador donde nombre de usuario='xiaozhu'
establecer rs=conn.execute(sql)
Cerrar automáticamente el conjunto de registros después de la ejecución
Finalmente, solo necesitas cerrar la conexión.
con.cerrar
establecer conexión = nada
2.rs.abierto
establecer rs=servidor.createobject(adodb.recordset)
sql=seleccionar * del administrador donde nombre de usuario='xiaozhu'
rs.open sql, conexión, 1,1
Puede configurar algunos parámetros usted mismo, es decir, los métodos de bloqueo y movimiento del cursor.
Finalmente, cierre el conjunto de registros y la conexión.
rs.cerrar
establecer rs = nada
con.cerrar
establecer conexión = nada
3.comando.ejecutar
sql=seleccionar * del administrador donde nombre de usuario='xiaozhu'
establecer rs=comando.ejecutar(sql)
************************************************** * ****************************
1.
set rs=conn.execute (si es una declaración de selección) obtiene rs.recordcount=-1
rs.open sql,conn (sql es una declaración de selección) El rs.recordcount obtenido es el número normal de registros
2.
rs.open es para abrir la base de datos conn.execute es para ejecutar instrucciones SQL
set rs=conn.execute(insertar,actualizar,eliminar) devuelve un conjunto de registros cerrado
set rs=conn.execute(select) devuelve un conjunto de registros no cerrado
3.
CONN.EXECUTE(SQL,FilasAfectadas,C)
Significado del parámetro:
El valor de SQL puede ser una declaración SQL, un nombre de tabla, un nombre de procedimiento almacenado o cualquier cadena aceptable para el proveedor de datos. Para mejorar el rendimiento, es mejor especificar valores apropiados para los parámetros C
El parámetro opcional RowsAffected devolverá el número afectado después de la ejecución de la consulta INSERT, UPDATE o DELETE. Estas consultas devolverán un objeto Recordset cerrado.
Una consulta SELECT devolverá un valor RowsAffected de -1 y devolverá un Recordset abierto con una o más filas de contenido.
4.
conn.execute sql es adecuado para su uso cuando no es necesario devolver un objeto de conjunto de registros, como el siguiente código:
sql=eliminar de enews donde id=&cstr(id)
conexión.ejecutar sql
Si necesita devolver un objeto de conjunto de registros, utilice el siguiente código:
sql=seleccione de enews donde id=&cstr(id)
establecer rs = conexión.execute(sql)
Si elimina los corchetes aquí en ejecutar (sql) (es decir, establece rs = conn.execute sql), se mostrará un mensaje de error como que la declaración no ha finalizado. Miré el formato de sintaxis y descubrí que hay dos. formatos. Los detalles son los siguientes:
Formato 1: Nombre del objeto de conexión. Ejecutar (comando SQL).
Formato 2: Nombre del objeto de conexión. Ejecutar (nombre de la tabla de datos).
Como se puede ver en el formato anterior, las instrucciones SQL después de la ejecución se incluyen entre paréntesis, pero de hecho, si realiza operaciones como eliminar o modificar, no es necesario incluir las instrucciones SQL entre paréntesis para ejecutarlas correctamente. ¿Es esto? Para ejecutar la consulta, debe incluir el comando sql entre paréntesis; de lo contrario, se producirá un error. He leído todos los tutoriales de ASP disponibles y ninguno de ellos mencionó este problema. Busqué y no encontré ninguna respuesta. sobre el motivo. No hables solo de las reglas gramaticales. Espero obtener la respuesta correcta, gracias.