Foros del Web » Programando para Internet » ASP Clásico »

Ayuda por favor: Error con Insert y foxpro

Estas en el tema de Ayuda por favor: Error con Insert y foxpro en el foro de ASP Clásico en Foros del Web. Buenas tardes. Me estoy volviendo loco. Estoy intentando hacer una cosa tan simple, pero no me deja... Estoy intentando hacer un Insert, mediante sql y ...
  #1 (permalink)  
Antiguo 29/06/2005, 11:03
 
Fecha de Ingreso: diciembre-2003
Mensajes: 141
Antigüedad: 20 años, 6 meses
Puntos: 0
Ayuda por favor: Error con Insert y foxpro

Buenas tardes.
Me estoy volviendo loco.

Estoy intentando hacer una cosa tan simple, pero no me deja...

Estoy intentando hacer un Insert, mediante sql y asp, a una base de datos FoxPro.

El tema está en que no sabia como insertar fechas y campos memo, pero esto ya lo solucioné. Por si le sirve a alguien:

Para fechas debe ir entre {} Por ejemplo:
Código:
INSERT into tabla (fecha) values ({10/26/2005})
Ojo! mirar que debe ser en formato mm/dd/aaaa

PAra memos, lo mismo, entre {}. Por ejemplo:
Código:
INSERT into tabla (memo) values ({fjsdakl fal la l lafjlsa fjal})
Pero el problema es que NO SOY CAPAZ DE ENTRAR UN CAMPO NUMÉRICO...

La sentencia mas o menos lo tengo así

Código:
INSERT into tabla (edad, nombre) values ( 14, 'Pablito')
Si lo hago mediante variables:

Código:
edad = "14"
nombre = "Pablito"

sql = INSERT into tabla (edad, nombre) values ( " & edad & ", '" & nombre & "')
No me deja de ninguna de las dos maneras...
El error:

"Data type mismatch" (refiriendose al campo "edad")

Pueden ayudarme?
En Mysql o Access, no tengo ningún tipo de problema.

Saludos y muchas gracias!
  #2 (permalink)  
Antiguo 29/06/2005, 11:26
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 22 años, 5 meses
Puntos: 98
:-p Fox Pro, trataste pasandole comillas dobles a los strings en lugar de simples?
Recuerdo vagamente, pero puedo estar equivocado, que en FoxPro asi es

Salu2,
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
  #3 (permalink)  
Antiguo 30/06/2005, 00:28
 
Fecha de Ingreso: diciembre-2003
Mensajes: 141
Antigüedad: 20 años, 6 meses
Puntos: 0
Hola u_goldman!

Cita:
:-p Fox Pro, trataste pasandole comillas dobles a los strings en lugar de simples?
Con comillas simples para alfanuméricos (strings) no tengo ninún problema. El problema lo tengo en los numéricos. En la sentencia SQL los dejo sin comilla simple, ni comilla doble (tal y como se tratan los numéricos, no?).
Por ejemplo (el anterior):

Código:
INSERT into tabla (edad, nombre) values ( 14, 'Pablito')
El campo "edad" está declarado en la tabla "dbf" incluida en el "dbc" de foxpro como numérico.

El campo "nombre" está decalrado en la tabla "dbf" incluida en el "dbc" de foxpro como String.

No hay problema insertando el campo 'nombre', pero el numérico da el error "Data type mismatch"

También coincido con tu exclamación, :-p FoxPro! , pero he tenido que "adaptarme" a un sistema ya hecho y (por ahora) sin muchas posibilidades y tiempo para adaptarlo, por ejemplo, a mysql.

La solución, debe ser algo rebuscado, pero simple... no doy con ello

Gracias y saludos!!!
  #4 (permalink)  
Antiguo 30/06/2005, 19:09
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 22 años, 5 meses
Puntos: 98
Y si tratas de insertar los valores mediante el objeto command?
Yo y mi objeto command!!
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
  #5 (permalink)  
Antiguo 01/07/2005, 07:49
Avatar de Myakire
Colaborador
 
Fecha de Ingreso: enero-2002
Ubicación: Centro de la república
Mensajes: 8.849
Antigüedad: 22 años, 4 meses
Puntos: 146
¿Por que no pruebas la sentencia directamente el foxpro (en la ventana de comandos) y revisas los mensajes que te arroja en la propia ayuda de FoxPro?

El INSERT esta sintacticamente bien formado pero tendrías primero que correrlo en fox, si ahí si te funciona y en asp no, el problema es del proveedor que usas (no se como te conectes)

Saludos
  #6 (permalink)  
Antiguo 02/07/2005, 23:40
 
Fecha de Ingreso: diciembre-2003
Mensajes: 141
Antigüedad: 20 años, 6 meses
Puntos: 0
Holas a los dos!

Perdón por la tardanza, pero he estado liado...

Bueno, al final lo solucioné, de una manera "poco ortodoxa"
Hay un dicho que dice, "muerto el perro, muerta la rábia..." . Pues eso, al final pasé de la dbc y me monté la conexión directamente a sistema de "tablas libres", es decir, cogí todos los "dbf" que contenia la "dbc" y los dejé en un directorio del server. Hice la conexión OLEDB directa al directorio y funciona a la perfección.

Las sentencias SQL vuelven a funcionar "como toda la vida" . El programador que lleva el tema con Fox ya me dijo que le daba lo mismo que estubieran en un "dbc" que "sueltos los dbf" por un directorio. La lectura de los datos podia hacerla igualmente.

Bueno, pues eso, de todas maneras seguiré investigando tal como dice Myakire, directamente desde la ventana de Fox.
Por cierto, u_goldman, ¿lo del command?

Saludos y muchas gracias por todo!!!
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 00:28.