Admito que me avergüenza un poco hacer esta consulta pero bueno, trato de aprender y eso ayuda.
Cuando empecé a programar en ASP tuve que aprender a conectar base de datos. Por lo general utilizo Access (es lo que más me piden) y mi rutina de conexión es la siguiente:
Cita:
y en cada página ASP coloco al inicioDim Conexion,Tabla1, Tabla2, Tabla3
Set Conexion=Server.CreateObject("adodb.connection")
Set Tabla1=Server.CreateObject("adodb.recordset")
Set Tabla2=Server.CreateObject("adodb.recordset")
Set Tabla3=Server.CreateObject("adodb.recordset")
Conexion.open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=ruta_de_la_base_de_datos"
Set Conexion=Server.CreateObject("adodb.connection")
Set Tabla1=Server.CreateObject("adodb.recordset")
Set Tabla2=Server.CreateObject("adodb.recordset")
Set Tabla3=Server.CreateObject("adodb.recordset")
Conexion.open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=ruta_de_la_base_de_datos"
Cita:
<!-- #include file="conector.asp" -->
<!-- #include file="adovbs.inc" -->
<!-- #include file="adovbs.inc" -->
Y cada vez que quiero hacer una consulta simple hago esto
Cita:
Temp1="sentencia SQL de consulta"
Tabla1.Open Temp1, Conexion
...
Tabla1.Close
Tabla1.Open Temp1, Conexion
...
Tabla1.Close
... cuando quiero utilizar el RecordCount uso lo siguiente
Cita:
y así puedo utilizar el RecordCountTabla1.Open Temp, Conexion, adOpenStatic, adCmdTable
Y finalmente, si quiero ingresar datos uso esto
Cita:
Tabla1.Open Temp, Conexion,2,3,1
Como siempre funcionó y jamás me dio problema alguno, pues no tuve motivo para curiosear sobre el tema. Sin embargo hace poco, tarde pero al fin de cuentas, encontré un artículo sobre el tema de cursores, lo que yo pongo como "2,3,1" para poder tener la conexión en modo de escritura.
Revisando en la biblioteca de código del foro encontré este
Cita:
y quisiera saber ¿que significado tienen los 3,3 del final?. Me interesa esta función y me gustaría modificarla para poder usarla alternativamente para cargar una tabla en modo lectura, en modo escritura, para poder utilizar el RecordCount, etc.Function conx_bd(nombre_bd)
con = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source="& Server.MapPath("carpeta/"&nombre_bd&".mdb")&";" & _
"Jet OLEDB:Database Password=tuclaveaqui;"
set conx = Server.Createobject("adodb.connection")
conx.open con
conx_bd = conx
End Function
El llamado lo hacemos asi
sql= "SELECT * FROM tutabla"
Set rs = Server.CreateObject("ADODB.Recordset")
rs.Open sql, conx_bd("tubasededatossinextencion"), 3, 3
con = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source="& Server.MapPath("carpeta/"&nombre_bd&".mdb")&";" & _
"Jet OLEDB:Database Password=tuclaveaqui;"
set conx = Server.Createobject("adodb.connection")
conx.open con
conx_bd = conx
End Function
El llamado lo hacemos asi
sql= "SELECT * FROM tutabla"
Set rs = Server.CreateObject("ADODB.Recordset")
rs.Open sql, conx_bd("tubasededatossinextencion"), 3, 3
Gracias por el apoyo
Un saludo desde Lima, Perú