Recomendado: en ASP, implementa la exportación de datos de la base de datos DBF a la tabla SQL Descripción: La estructura de la base de datos DBF debe ser consistente con la tabla SQL. El siguiente es el contenido de referencia: <% DIM Conndbf_DBF, Driver_DBF, SourCetype_DBF, DBPATH_DBF DIM CONN_
8.4.3 Creación de un conjunto de registrosEs muy fácil crear un conjunto de registros, que se logra llamando al método abierto del objeto de registro:
RecordSet.open [fuente], [activeconnection], [cursortype], [listype], [opciones]
Los parámetros y descripciones se muestran en la Tabla 8-3:
Tabla 8-3 Parámetros y descripciones del método abierto
parámetro
ilustrar
Fuente
Fuente de datos. Puede ser un nombre de tabla en la base de datos, una consulta o procedimiento almacenado, una cadena SQL, un objeto de comando u otro objeto de comando adecuado para el proveedor
Activeconexión
La conexión utilizada por el conjunto de registros. Puede ser una cadena de conexión o un objeto de conexión abierto
Cursor
El tipo de cursor utilizado. Debe ser uno de los tipos de cursor definidos, el valor predeterminado es adforwardonly
Bloqueo
El tipo de bloqueo utilizado. Debe ser uno de los tipos de bloqueo definidos, el valor predeterminado es Adlockreadonly
Opción
Dígale al proveedor cuál es el contenido del parámetro de origen, como tablas, cadenas de texto, etc.
Por ejemplo, para abrir el conjunto de registros en la tabla de autores en los pubs de la base de datos:
Dim rsauthors
Establecer rsauthors = server.createObject (ADODB.RecordSet)
rsauthors.
'Haz algo aquí
rsauthors.clar
Establecer rsauthors = nada
Tenga en cuenta que hay varios parámetros que no se especifican. De hecho, todos los parámetros son opcionales, y puede establecer los valores de propiedad correspondientes para el conjunto de registros antes de abrirlos:
Dim rsauthors
Establecer rsauthors = server.createObject (ADODB.RecordSet)
Con rsauthors
.Source = autores
.Activeconnection = strconn
.Cursortype = AdoptForwardonly
.LockType = adlockreadonly
.Abierto
Terminar con
'Haz algo aquí
rsauthors.clar
Establecer rsauthors = nada
Una vez que se abre el conjunto de registros, el puntero actual se encuentra automáticamente en el primer registro. Si no hay registro en el conjunto de registros, los atributos EOF y BOF son verdaderos:
rsauthors.
Si rsauthors.bof y rsauthors.eof entonces
'Recordsset está vacío
Final si
1. Parámetro de opciones
El parámetro de opciones del método abierto permite especificar el contenido del texto del comando. Puede ser una de las siguientes constantes de CommandTypeenum:
ADCMDText: comandos de texto, como cadenas SQL.
ADCMDTABLE: Nombre de la tabla.
ADCMDStoredProc: Nombre del procedimiento almacenado.
ADCMDFILE: el nombre del archivo del conjunto de registros guardado.
ADCMDTABLEDIRCT: Nombre de la tabla.
ADCMDURLBIND: Dirección de URL.
La diferencia entre ADCMDTable y ADCMDTABLEDIRCECT es muy pequeña. Si desea usar todas las columnas en una tabla, el uso de ADCMDTABLEDIRCT hará que la ejecución sea más rápida porque ADO realiza algunas optimizaciones internas.
Si no se especifica ningún tipo de comando, ADO debe calcular el tipo de comando ejecutado, que dará como resultado una sobrecarga adicional.
Aquí hay dos opciones más: ADCMDUNSpecified significa que no hay tipo especificado; Adcmdunknow significa que se desconoce el tipo de comando. No pueden usarse en general.
Opciones adicionales
El parámetro de opciones puede ser cualquiera de las constantes anteriores, pero también se pueden agregar las siguientes constantes EjecutarOptionEnum:
adasyncexcute: ejecute comandos asíncronamente.
Adasyncfetch: después de obtener el conjunto de fila inicial, obtenga las filas restantes asincrónicamente.
ADASYNCFECHBLOKING: a excepción de obtener registros y no evitar que el comando se ejecute, los otros son similares a Adasyncfetch.
Adexechtenorecords: el comando no devuelve registros.
El procesamiento asincrónico significa que las operaciones se realizan en segundo plano, puede ejecutar comandos y luego continuar con otro trabajo sin esperar a que se completen (operación sincrónica). Esto es particularmente conveniente al crear una interfaz de usuario, ya que se puede devolver desde la ejecución de comando para mostrar algún contenido al usuario mientras la adquisición de datos aún está en segundo plano. Esto no es muy útil para los programadores de ASP al devolver los conjuntos de registros, porque el lenguaje de secuencias de comandos no admite eventos ADO, por lo que no se sabe cuándo el conjunto de registros ha completado el cambio de relleno. Al procesar la actualización, eliminar o insertar comandos de datos y no devolver un conjunto de registros, se pueden usar operaciones asíncronas, es decir, solo si no le importan los resultados.
Por otro lado, la opción AdexecUteRecords es muy útil. Le dice a ADO que ejecute comandos que no devuelven ningún dato. Por lo tanto, no hay necesidad de crear un conjunto de registros (tal vez vacío en resumen). Esto acelera la ejecución de operaciones de consultas para actualizaciones o adiciones de datos.
Para agregar una de estas opciones, puede usar el símbolo o (equivalente al signo más)
adcmdstoredproc o adexecutenorecords
adcmdStoreProc AdexecUteRecords
En el próximo capítulo, verá una introducción más detallada al contenido relacionado, ya que esto será más útil cuando se trata de comandos (en lugar de conjuntos de registros).
2. Mover en el conjunto de registros
Una vez que se abre un conjunto de registros, a menudo es necesario atravesar cada registro. Esto requiere el uso del atributo EOF. Cuando se alcanza el final del conjunto de registros, EOF se vuelve verdadero, porque se puede crear un bucle así:
rsauthors.
Mientras que no rsauthors.eof
Response.Write rsauthors (au_lname :) &, & _
rsauthors (au_fname) y <br>
rsauthors.Movenext
Encaminarse a
El ejemplo anterior boques hasta que el atributo EOF sea verdadero antes de salir. El método MoveNext se usa para moverse al siguiente registro.
Si el conjunto de registros permite el movimiento hacia atrás, puede usar el método MovePrevious. En este caso, el valor del atributo BOF debe detectarse en el bucle. También hay métodos MoveFirst y Movelast que se mueven al primer y último registro respectivamente:
RSAUTHORS.
'Ahora en el primer disco
rsauthors.movelast
'Ahora en el último disco
rsauthors.MovePrevious
rsauthors.MovePrevious
'Ahora tres filas desde el final del conjunto de registros
rsauthors.MoveFirst
'De vuelta al principio de nuevo
3. Use colecciones de campos
La colección de campos contiene objetos de campos para cada campo (columna) en el conjunto de registros. La colección de campos es la colección predeterminada de conjuntos de registros, por lo que se puede omitir al acceder a los campos, al igual que en el ejemplo ... Por lo tanto, hay múltiples formas de acceder a los campos:
rsauthors.fields (au_lname) .value
rsauthors (au_lname) .value
rsauthors (1). Valor
rsauthors.fields (1). Valor
Puede usar el nombre del campo o usar sus bits en la colección
Compartir: ASP implementa el envío de notificaciones por correo electrónico al enviar formularios a la base de datos El siguiente es el contenido citado: <% dim objcdomail set objcdomail = server.createObject (cdonts.newmail) objcdomail.from = xxx@h