Re: Problema con Debian, C y MySQL

2012-12-27 Por tema Altair Linux
Hola,

ha resultado ser desbordamiento en la cadena de caracteres. El
problema estaba en que hay que vaciar la cadena con strcpy(cadena,"")
al comenzar cada interaccion y luego ir añadiendo las partes d cadena
con strcat. Estoy mirando con phpmysql y los datos introducidos
parecen ser los correctos.


--
To UNSUBSCRIBE, email to debian-user-spanish-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Archive: 
http://lists.debian.org/ca+hdpf+fk-u4ywxhcknzzekzrjbc2f6kvugh4t8ihypy1gw...@mail.gmail.com



Re: Problema con Debian, C y MySQL

2012-12-26 Por tema Ismael L. Donis Garcia
- Original Message - 
From: "Antonio Galicia" 

To: "Altair Linux" 
Cc: "Debian User Spanish" 
Sent: Wednesday, December 26, 2012 1:17 PM
Subject: Re: Problema con Debian, C y MySQL




2012/12/26 Altair Linux 



Problema, estoy viendo que el uso continuo de esas funciones de esa
forma produce un segmentation fault. Es un bucle anidado de 1000x1000
y salta por los aires en el 99. Recuerdo haber leido, y para colmo no



¿Puedes mostrar el código que estás usando y cómo lo estás compilando?



No has probado la misma sentencia en otros motores. Por ejemplo Firebird o 
PostgreSQL


Saludos
=
|| ISMAEL ||
= 




--
To UNSUBSCRIBE, email to debian-user-spanish-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Archive: 
http://lists.debian.org/62df763688334233bc3832c96a805...@eicc.citricos.cu



Re: Problema con Debian, C y MySQL

2012-12-26 Por tema Antonio Galicia
2012/12/26 Altair Linux 

> Problema, estoy viendo que el uso continuo de esas funciones de esa
> forma produce un segmentation fault. Es un bucle anidado de 1000x1000
> y salta por los aires en el 99. Recuerdo haber leido, y para colmo no

¿Puedes mostrar el código que estás usando y cómo lo estás compilando?

--
 Saludos,
 PP

Ofertas y descuentos en http://gplia.com/C4kls
Más ofertas en http://www.groupon.com.mx/in/.gG7NHg?nlp
Y mas http://www.clickonero.com.mx/?ref=d2rztcyxm9r


--
To UNSUBSCRIBE, email to debian-user-spanish-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Archive: 
http://lists.debian.org/CAGYn=y1xoco0tnlus5l1vjhpmhvl_loavxdc2hwv4j6f3xd...@mail.gmail.com



Re: Problema con Debian, C y MySQL

2012-12-26 Por tema fernando sainz
El día 26 de diciembre de 2012 17:16, Altair Linux
 escribió:
> Tomo nota, pero parece que el error se produce al usar las funciones
> strcat y strcpy dentro del bucle.


Pues lo mas probable es que sea ahí.

strcat y strcpy reciben un puntero a una cadena destino que debe ser
lo bastante larga para contener lo que se añade o copia.
(Con que en algún caso no hayas finalizado una cadena con '\0' se te
producirá el desbordamiento.)



>
> En los ejemplos de esa web el parametro de mysql_query tambien es una
> cadena de caracteres. Esto me choca porque evidentemente mysql acepta
> tipos de datos numericos.
>
> Puede que sea una tonteria, pero he pensado que puede ser un problema
> de velocidad, quiza las funciones de string.h se ejecutan demasiado
> rapido y por eso el programa da segmentation fault. Quiza el tema este
> en que de una ejecucion a otra tengan que pasar, por ejemplo, 5
> segundos de pausa.

No creo...

S2

>
>
> --
> To UNSUBSCRIBE, email to debian-user-spanish-requ...@lists.debian.org
> with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
> Archive: 
> http://lists.debian.org/CA+HdPf+U6CEgAH2cSsZcOwSQaFP6Op6=pg6ux7f+ijonohd...@mail.gmail.com
>


--
To UNSUBSCRIBE, email to debian-user-spanish-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Archive: 
http://lists.debian.org/CAGw=rhgugvywl80p4js24b7rhxd1zew0g1ouoqjhpzq__es...@mail.gmail.com



Re: Problema con Debian, C y MySQL

2012-12-26 Por tema Altair Linux
Tomo nota, pero parece que el error se produce al usar las funciones
strcat y strcpy dentro del bucle.

En los ejemplos de esa web el parametro de mysql_query tambien es una
cadena de caracteres. Esto me choca porque evidentemente mysql acepta
tipos de datos numericos.

Puede que sea una tonteria, pero he pensado que puede ser un problema
de velocidad, quiza las funciones de string.h se ejecutan demasiado
rapido y por eso el programa da segmentation fault. Quiza el tema este
en que de una ejecucion a otra tengan que pasar, por ejemplo, 5
segundos de pausa.


-- 
To UNSUBSCRIBE, email to debian-user-spanish-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Archive: 
http://lists.debian.org/CA+HdPf+U6CEgAH2cSsZcOwSQaFP6Op6=pg6ux7f+ijonohd...@mail.gmail.com



Re: Problema con Debian, C y MySQL

2012-12-26 Por tema _
Capaz te sirve:

http://www.cs.wichita.edu/~chang/lecture/cs742/program/how-mysql-c-api.html

slds.

El 26 de diciembre de 2012 15:28, Altair Linux escribió:

> La codificacion no parece ser el origen del problema, hice dos
> pequeños programas en C explicitamente para probarla y no dan
> problemas.
>
> Por otra parte, el ejemplo que has puesto no se si me sirve. El
> problema es meter datos numericos (int o char, principalmente) desde
> el programa en C a MySQL, y realizar lo mismo pero al reves. La salida
> del comando enc, segun entiendo lo que veo en man, es una cadena de
> texto, lo que me deja con las mismas.
>
>
> --
> To UNSUBSCRIBE, email to debian-user-spanish-requ...@lists.debian.org
> with a subject of "unsubscribe". Trouble? Contact
> listmas...@lists.debian.org
> Archive:
> http://lists.debian.org/ca+hdpfjdrsezzs2kgu2pbtzte0iswqhyvwck-c1xztd9fec...@mail.gmail.com
>
>


Re: Problema con Debian, C y MySQL

2012-12-26 Por tema Altair Linux
La codificacion no parece ser el origen del problema, hice dos
pequeños programas en C explicitamente para probarla y no dan
problemas.

Por otra parte, el ejemplo que has puesto no se si me sirve. El
problema es meter datos numericos (int o char, principalmente) desde
el programa en C a MySQL, y realizar lo mismo pero al reves. La salida
del comando enc, segun entiendo lo que veo en man, es una cadena de
texto, lo que me deja con las mismas.


--
To UNSUBSCRIBE, email to debian-user-spanish-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Archive: 
http://lists.debian.org/ca+hdpfjdrsezzs2kgu2pbtzte0iswqhyvwck-c1xztd9fec...@mail.gmail.com



Re: Problema con Debian, C y MySQL

2012-12-26 Por tema _
Se me ocurre posiblemente una posible codificación sobre la cadena es decir:

trabajar sobre longint posiblemente.

ejemplo burdo:

echo "cadena" | sha1sum
8ab5f7ef21630a3e961196f8483639101bf59629

enc(8ab5f7ef21630a3e961196f8483639101bf59629) => retorna un coding binario
u algo especifico que pueda caber en 4 bytes de longint. para solo procesar
numeros.

quiza sea muy volado pero bueno.

dec(binario) => 8ab5f7ef21630a3e961196f8483639101bf5962

slds.

El 26 de diciembre de 2012 15:06, Altair Linux escribió:

> Buenas,
>
> estoy haciendo un programa en lenguaje C (de momento no uso C++) y
> estoy usando el conector de C que tiene MySQL. El problema viene con
> que uso gran cantidad de datos que son numeros (int y char) y la
> función mysql_query del conector sólo acepta cadenas de texto.
>
> Probando, he encontrado una forma de convertir de int a char y de char
> a int, que parecen funcionar bien, para formar la cadena de texto que
> se necesita como parámetro para myql_query estoy usando la función
> strcat, de esa forma formo la cadena de texto final a base de partes
> de texto.
>
> Problema, estoy viendo que el uso continuo de esas funciones de esa
> forma produce un segmentation fault. Es un bucle anidado de 1000x1000
> y salta por los aires en el 99. Recuerdo haber leido, y para colmo no
> me acuerdo donde, que las funciones de string,h hay que usarlas con
> moderacion por algun motivo. Viendo la dorucmentacion del conector, la
> funcion mysql_query parece la unica para las ordenes a la base de
> datos PERO solo acepta texto. Entonces, ¿que usar para enviar y
> recibir numeros, sean int o char?
>
> Estoy usando Debian estable, con MySQL y gcc.
>
> La documentacion de la api para C esta aqui
> http://dev.mysql.com/doc/refman/5.1/en/c-api-function-overview.html
>
>
> --
> To UNSUBSCRIBE, email to debian-user-spanish-requ...@lists.debian.org
> with a subject of "unsubscribe". Trouble? Contact
> listmas...@lists.debian.org
> Archive:
> http://lists.debian.org/ca+hdpf+bek1i5iw8ik3judcjd4obtvc9_kvuln5vfvhnfc...@mail.gmail.com
>
>


Problema con Debian, C y MySQL

2012-12-26 Por tema Altair Linux
Buenas,

estoy haciendo un programa en lenguaje C (de momento no uso C++) y
estoy usando el conector de C que tiene MySQL. El problema viene con
que uso gran cantidad de datos que son numeros (int y char) y la
función mysql_query del conector sólo acepta cadenas de texto.

Probando, he encontrado una forma de convertir de int a char y de char
a int, que parecen funcionar bien, para formar la cadena de texto que
se necesita como parámetro para myql_query estoy usando la función
strcat, de esa forma formo la cadena de texto final a base de partes
de texto.

Problema, estoy viendo que el uso continuo de esas funciones de esa
forma produce un segmentation fault. Es un bucle anidado de 1000x1000
y salta por los aires en el 99. Recuerdo haber leido, y para colmo no
me acuerdo donde, que las funciones de string,h hay que usarlas con
moderacion por algun motivo. Viendo la dorucmentacion del conector, la
funcion mysql_query parece la unica para las ordenes a la base de
datos PERO solo acepta texto. Entonces, ¿que usar para enviar y
recibir numeros, sean int o char?

Estoy usando Debian estable, con MySQL y gcc.

La documentacion de la api para C esta aqui
http://dev.mysql.com/doc/refman/5.1/en/c-api-function-overview.html


--
To UNSUBSCRIBE, email to debian-user-spanish-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Archive: 
http://lists.debian.org/CA+HdPf+BeK1i5iW8iK3juDCJD4o=btvc9_kvuln5vfvhnfc...@mail.gmail.com