Los Foros de ASPTutor.com
Home | Perfil | Registrarse | Temas Activos | Miembros | Buscar | FAQ
Usuario:
Password:
 Todos los Foros
 ADO
 Update, delete, insert into...
 Foro Bloqueado  Tema Bloqueado


Autor Temas
jenqu
Junior Member


244 Posts
Mensajes - 10 Nov 2003 :  12:27:53  Ver Perfil  Enviar Email
Me gustaría saber por qué es peor utilizar un recordset editable... Cual es la diferencia porque no tengo ni idea...
He buscado por ahí pero la verdad es que solo me ha quedado claro que optimiza el tiempo de carga.
Muchas gracias.

buho_nero
Moderator

España
1316 Posts
Posted - 10 Nov 2003 :  16:13:58  Ver perfil  Enviar e-mail
Un recordset es un objeto de consulta, y se le añaden un montón de aplicaciones más sobre los datos (borrado, actualizaciones ...), lo que lo convierte en un objeto que consume una gran cantidad de recursos. Crea cursores para poder recorrer los datos fuentes, crea bloqueos para gestionar la concurrencia y actualizacones dinámicas ...
Para realizar una inserción, borrado o modificación no es necesario hacer nada, simplemente dar una notificación al gestor de la base de datos de la acción que queremos realizar, y esa sintáxis es SQL, es decir, TEXTO, nada más.

Inicio Pagina

jenqu
Junior Member


244 Posts
Posted - 10 Nov 2003 :  17:03:10  Ver perfil  Enviar e-mail
Aaaaaah, vale, ya está resuelta mi duda. Me imaginaba algo así pero no sabía si era solo por eso o había alguna razón más.
Pues nada, habrá que hacerte caso...
Gracias!!

Inicio Pagina

jenqu
Junior Member


244 Posts
Posted - 11 Nov 2003 :  11:35:04  Ver perfil  Enviar e-mail
Hola, pues sigo con lo mismo porque estoy intentando hacer un INSERT INTO y la verdad es que soy un poco paquete. Como me enseñaron a insertar registros de la otra forma...

Os cuento:
Tengo una tabla Descargas_Clientes con los campos: Programa(tipo texto), Tipo (tipo texto), Fecha (tipofecha/hora), Hora (tipo fecha/hora), IP (tipo texto), Cliente (tipo numérico)
Y entonces pongo lo siguiente:
SQL="INSERT INTO Descargas_Clientes (Programa, Tipo, Fecha, Hora, IP, Cliente) VALUES (PPV, programa, 12/11/2003, 24:45, 12.12.12.12, 1)"
conexion.Execute(SQL)

Y el error que aparece:
Microsoft JET Database Engine (0x80040E14)
Error de sintaxis (falta operador) en la expresión de consulta '24:45'.
En la linea donde pongo conexion.Execute(SQL)

He probado a poner el campo Hora tipo texto y también insertando la hora con minutos y segundos... y nada.
Y eso, que no sé donde está el fallo... Algún alma caritativa?
Gracias!

Inicio Pagina

buho_nero
Moderator

España
1316 Posts
Posted - 11 Nov 2003 :  19:45:27  Ver perfil  Enviar e-mail
En la sintáxis estándar SQL las fechas van entre #11/11/2003# .
Dan algunos problemas; Access se vuelve algo caprichoso, muchos gestores usan formato de cadena (SQL Server, AS/400, ...), en fin, lo más lógico es pasar de todo y crear tres campos numéricos (dia,mes,anho), yo lo hago así, y desde luego vivo mucho más tranquilo.

Inicio Pagina

jenqu
Junior Member


244 Posts
Posted - 12 Nov 2003 :  09:44:54  Ver perfil  Enviar e-mail
Muchas gracias, he seguido tu consejo, pero, como siempre pasa, tengo otro problema.
Ahora los valores de fecha, hora y IP se los paso creando unas variables:

v_dia=FormatDateTime(now(),vbshortdate)
v_hora=FormatDateTime(now(),vbshorttime)
v_IP=request.ServerVariables("Remote_Addr")

SQL="INSERT INTO Descargas_Clientes (Programa, Tipo, Fecha, Hora, IP, Cliente) VALUES (PPV, programa, '"&v_dia&"','"&v_hora&"','"&v_IP&"', 1)"
conexion.Execute(SQL)

Y el error que me da es este:
Microsoft JET Database Engine (0x80040E10)
No se han especificado valores para algunos de los parámetros requeridos.

No sé, supongo que será la sintaxis... La verdad es que no tengo muy claro si los formatos de fecha/hora son numericos o qué. El campo IP lo he puesto como texto en la base de datos. Vamos, que estoy un poco perdida.
Bueno, muchas gracias...


Inicio Pagina

jenqu
Junior Member


244 Posts
Posted - 12 Nov 2003 :  16:36:22  Ver perfil  Enviar e-mail
Hola, ya he encontrado la solución. Bieno, en realidad ya me funciona bien, pero no estoy muy segura de lo que he hecho, la verdad.
He insertado todos los campos ediante variables y he quitado los espacios entre campo y campo es decir, así:
SQL="INSERT INTO Descargas_Clientes (Programa,Tipo,Fecha,Hora,IP,Cliente)

Supongo que habrá sido una de las dos cosas.
En fin, que muchas gracias por todo, buho_nero

Inicio Pagina

   
 Foro Bloqueado  Tema Bloqueado
Ir a:
Los Foros de ASPTutor.com Los Foros de ASPTutor.com
Ir al principio de la Página

 Imprimir Tema
 

Descargas de manuales¦ Ejemplos de código ¦ Artículos mas visitados ¦ Envía tu articulo ¦ Foros ¦
  Libro de visitas ¦Crea un enlace con ASPTutor 
 

    © 2001-Hasta hoy  Pedro Rufo Martín  contactar