¿Ejemplo FWH-Xharbour-MySql?

¿Ejemplo FWH-Xharbour-MySql?

Postby FranciscoA » Mon Apr 09, 2012 9:49 pm

Hola amigos del foro.
Alguno de ustedes que use Mysql podría mostrar un pequeño ejemplo de como utilizar nombres de campos en variables?
Ya he peleado por 3 dias y no doy. Sería algo así:

cCampo:="CAMPO1"

oServer:Query("INSERT INTO mitable ('"+cCampo+"') VALUES ('"+cCampo+"' + '100.00' ;")
:|
//Sintaxis error near 'CAMPO1'

Agradezco de antemano.

Saludos.
Francisco J. Alegría P.
Chinandega, Nicaragua.

Fwxh-MySql-TMySql
User avatar
FranciscoA
 
Posts: 2159
Joined: Fri Jul 18, 2008 1:24 am
Location: Chinandega, Nicaragua, C.A.

Re: ¿Ejemplo FWH-Xharbour-MySql?

Postby Raymundo Islas M. » Mon Apr 09, 2012 10:32 pm

Francisco,

Por lo que entiendo, quieres grabar el valor de un campo mas x valor, al momento de anexar el registro a la DB, y por lo que veo, el error lo manda porque quieres hacer operaciones con un texto y numeros.

Lo que intentas hacer se puede sin problemas con un update : update tabla set campo = campo + 100

Saludos
FWH 10.6 + xHarbour + Borland 582
User avatar
Raymundo Islas M.
 
Posts: 592
Joined: Tue Mar 14, 2006 11:34 pm
Location: Acapulco, Gro. MEXICO

Re: ¿Ejemplo FWH-Xharbour-MySql?

Postby FranciscoA » Tue Apr 10, 2012 1:22 am

Ray, gracias por contestar.
Tienes razon sobre la parte de VALUES (), estaba "mareado" al momento de hacer el post. Debió haber sido así:
Code: Select all  Expand view  RUN
cCampo:="CAMPO1"
oServer:Query("INSERT INTO mitable ('"+cCampo+"') VALUES ( '100.00') ;")
 

Hice esta prueba en el SQLyog:
SET @c = 'CAMPO1';
INSERT INTO mitable (@c) VALUES ('100.00') ;

Sin embargo siempre da el error en 'CAMPO1' . Es decir, reconoce el valor de la variable pero no acepta la operación. He leído en muchos foros y la respuesta es que no se puede, que se debe usar sentencias preparadas.

SIN EMBARGO TU POST ME HA DADO OTRA IDEA. Voy a insertar un registro con valores por defecto y luego lo voy a actualizar como indicas. Lo que estoy haciendo es un informe bastante complejo que requiere de una cantidad de columnas que puede variar, y no puedo identificarlas por su nombre porque se me haría muy largo el código.

Muchas gracias.

Saludos.
Francisco J. Alegría P.
Chinandega, Nicaragua.

Fwxh-MySql-TMySql
User avatar
FranciscoA
 
Posts: 2159
Joined: Fri Jul 18, 2008 1:24 am
Location: Chinandega, Nicaragua, C.A.

Re: ¿Ejemplo FWH-Xharbour-MySql?

Postby Willi Quintana » Tue Apr 10, 2012 2:30 am

A ver prueba asi:
Code: Select all  Expand view  RUN

cCampo:="CAMPO1"
oServer:Query("INSERT INTO mitable (" + cCampo + ") VALUES ( '100.00') ;")
 


Salu2
User avatar
Willi Quintana
 
Posts: 1023
Joined: Sun Oct 09, 2005 10:41 pm
Location: Cusco - Perú

Re: ¿Ejemplo FWH-Xharbour-MySql?

Postby FranciscoA » Tue Apr 10, 2012 1:06 pm

Willi, gracias por contestar.

Muestra error de sintaxis near ".
Ya lo he probado con comillas dobles, sencillas,signos @,$,%,& y ya no recuerdo que más inventos je-je-je.
En los foros de MySql que visité encontré varios post al respecto, y la contestacion fué que no se podía hacer así.
Sin embargo, "googleando" me encontré uno en PHP idéntico que dice que le funcionó. No entiendo.

Saludos.
Francisco J. Alegría P.
Chinandega, Nicaragua.

Fwxh-MySql-TMySql
User avatar
FranciscoA
 
Posts: 2159
Joined: Fri Jul 18, 2008 1:24 am
Location: Chinandega, Nicaragua, C.A.

Re: ¿Ejemplo FWH-Xharbour-MySql?

Postby FranciscoA » Tue Apr 10, 2012 1:51 pm

Willi, solucionado al fin, en el foro en Inglés, por Enrico Giordani.
La solución es como la tuya, pero sin comillas simples en VALUES (100.00).
Code: Select all  Expand view  RUN
cCampo:="CAMPO1"
oServer:Query("INSERT INTO mitable (" + cCampo + ") VALUES ( 100.00) ;")

Agradezco sinceramente tu interés por ayudarme.
Saludos.
Francisco J. Alegría P.
Chinandega, Nicaragua.

Fwxh-MySql-TMySql
User avatar
FranciscoA
 
Posts: 2159
Joined: Fri Jul 18, 2008 1:24 am
Location: Chinandega, Nicaragua, C.A.

Re: ¿Ejemplo FWH-Xharbour-MySql?

Postby wmormar » Tue Apr 10, 2012 2:14 pm

Francisco Alegria,

Las comillas se usan en los campos de tipo texto, hasta en las fechas los he puesto, pero en los valores numéricos no llevan comillas.

Solo una apreciación.
William, Morales
Saludos

méxico.sureste
User avatar
wmormar
 
Posts: 1074
Joined: Fri Oct 07, 2005 10:41 pm
Location: México

Re: ¿Ejemplo FWH-Xharbour-MySql?

Postby nnicanor » Tue Apr 10, 2012 4:25 pm

cCampo:="CAMPO1"
oServer:Query("INSERT INTO mitable (" + cCampo + ") VALUES ( 100 ) ;")
Nicanor Martinez M.
Auditoria y Sistemas Ltda.
MicroExpress Ltda.
FW + FWH + XHARBOUR + HARBOUR + PELLES C + XDEVSTUDIO + XEDIT + BCC + VC_X86 + VCC_X64 + MINGW + R&R Reports + FastReport + Tdolphin + ADO + MYSQL + MARIADB + ORACLE
nnicanor@yahoo.com
nnicanor
 
Posts: 302
Joined: Fri Apr 23, 2010 4:30 am
Location: Colombia

Re: ¿Ejemplo FWH-Xharbour-MySql?

Postby Miguel Salas » Tue Apr 10, 2012 5:22 pm

Hola Francisco.

Estoy empezando a migrar a mysql con ADO, tendras un ejemplo basico de iniciacion que quieras compartir?
desde ya gracias

atte Miguel
Miguel Salas
 
Posts: 132
Joined: Sun Oct 23, 2005 4:09 pm
Location: Pánuco,Ver. México

Re: ¿Ejemplo FWH-Xharbour-MySql?

Postby FranciscoA » Tue Apr 10, 2012 7:20 pm

Gracias, nnicanor.

William, gracias.
Lo que me impidió ver lo de las comillas fué la fuerza de la costumbre por sentencias como las siguientes, donde los campos son numéricos, con la diferencia de que los valores a introducir provienen de variables.
WHERE numdoc = '"+cvaltochar(nDocu)+"' , SET numdoc = '"+cvaltochar(nNumdoc)+"' , etc,etc...

Miguel, no uso ADO. Utilizo FWH-XHARBOUR-MYSQL-TMYSQL.LIB
Si de cualquier manera te interesa el ejemplo, con gusto te lo envío. Indica tu email.

Saludos a todos.
Francisco J. Alegría P.
Chinandega, Nicaragua.

Fwxh-MySql-TMySql
User avatar
FranciscoA
 
Posts: 2159
Joined: Fri Jul 18, 2008 1:24 am
Location: Chinandega, Nicaragua, C.A.


Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: Google [Bot] and 47 guests