Page 1 of 1

Error MYSql UPDATE

Posted: Sun Mar 28, 2010 1:37 am
by Mauricio
:D

Hola Foro,

estoy intentando guardar un registro despues de actualizarlo y me sale este mensaje al hacerle un oTabla:update()


Error You Have an Error in Your SQL Syntax; Check the manual that corresponds to your MySql Version for the rights syntax to use near 'W' at line 1

lo curioso es que no en todas las tablas, solo en una me marca eso.

utilizo la clase estandar MySql de xHB/Contrib

alguna idea aparte de cambiar la sintaxis el codigo.


saludos,
Mauricio
:lol: :mrgreen:

Re: Error MYSql UPDATE

Posted: Sun Mar 28, 2010 9:05 am
by Frafive
Mauricio, puedes publicacar el codigo de como lo estas haicendo ?

Un saludo

Re: Error MYSql UPDATE

Posted: Sun Mar 28, 2010 6:34 pm
by Mauricio
El error se presenta en bOnPostEdit
oCol:bOnPostEdit := {|o, v| oRecarga:fieldput('exi12', v), oRecarga:update(), Suma1(), oBrw:refresh() }

Code: Select all

function Recargas()
   local oCol, cQuery, oDatos, oFont, oFont3
   LOCAL aBtn := array( 8 ), i
   local oBoton1, oBoton2
   local oFont1, oFont2, oEsperar

   oEsperar := Esperar('Espere un momento ... generando recargas .....')

   IF oMysql:netErr()
      MSGINFO( "Hubo un error en el servidor, verifique..." + oMySql:error(), cProgram )
        oEsperar:end()
      RETURN NIL
   ENDIF

   // GeneraBlancos()

   oRecarga := oMysql:Query( "SELECT * FROM recarga1 ORDER BY nombre")

   IF oRecarga:netErr()
      MSGINFO( "SE GENERO UN ERROR EN LA CONEXION, RE-INTENTE" + oRecarga:Error(), cProgram )
        oEsperar:end()
      RETURN NIL
   ENDIF



   DEFINE FONT oFont1 NAME 'Times New Roman' SIZE 0,-15 BOLD
   DEFINE FONT oFont2 NAME 'MS Sans Serif'   SIZE 0,-12 BOLD
   DEFINE FONT oFont3 NAME 'MS Sans Serif'   SIZE 0,-10 BOLD


   oEsperar:end()

   DEFINE DIALOG oDlg RESOURCE "ART0" OF oWnd TITLE 'Catalogo de Productos'
   oDlg:lHelpIcon := (.f.)


   oBrw:=TxBrowse():New(oDlg)
   SetMyBrwSql( oBrw, oRecarga )



   oCol := oBrw:AddCol()
   oCol:bStrData      := { || substr(MyCampo(oRecarga,"codigo"),1,8) }             // uno
   oCol:cHeader       := "Código"


   oCol := oBrw:AddCol()
   oCol:bStrData      := { || substr(MyCampo(oRecarga,"nombre"),1,25) }             // dos
   oCol:cHeader       := "Descripción"


   oCol := oBrw:AddCol()
   oCol:bStrData      := { || transform(MyCampo(oRecarga,"precio"),'9,999.99') }       // tres
   oCol:cHeader       := "Precio"
   oCol:nDataStrAlign := AL_RIGHT
   oCol:oDataFont     := oFont2


   oCol := oBrw:AddCol()
   oCol:bStrData      := { || transform(MyCampo(oRecarga,"exi01"),'9999') }            // cuatro
   oCol:cHeader       := "Exis"
   oCol:nDataStrAlign := AL_RIGHT
   oCol:oDataFont     := oFont2


   oCol := oBrw:AddCol()
   oCol:bStrData      := { || transform(MyCampo(oRecarga,"repartido"),'999') }        // cinco
   oCol:cHeader       := "Rep"
   oCol:oDataFont     := oFont2
   oCol:nDataStrAlign := AL_RIGHT


   oCol := oBrw:AddCol()
   oCol:bStrData      := { || transform(MyCampo(oRecarga,"saldo"),'999') }            // seis
   oCol:cHeader       := "Sdo"
   oCol:oDataFont     := oFont2
    oCol:nDataStrAlign := AL_RIGHT

   oCol := oBrw:AddCol()
   oCol:bStrData      := { || transform(MyCampo(oRecarga,"rec02"),'999') }           //siete
   oCol:cHeader       := "E-02"
    oCol:nDataStrAlign := AL_RIGHT
   oCol:lAllowSizing  := .f.
   oCol:oDataFont     := oFont3
   oCol:lTotal        := (.t.)


   oCol := oBrw:AddCol()
   oCol:bStrData      := { || transform(MyCampo(oRecarga,"exi02"),'999') }           //ocho
   oCol:cHeader       := "R-02"
   oCol:nDataStrAlign := AL_RIGHT
   oCol:lAllowSizing  := .f.
   oCol:nEditType     := EDIT_GET
   oCol:bEditValue    := {|| oRecarga:fieldget( "exi02" )}
   oCol:cDataType     := "N"
   // oCol:bOnPostEdit   := {|o, v| oRecarga:fieldput('exi02', v), oRecarga:update(), Suma1(), oBrw:refresh() }
   oCol:bOnPostEdit   := {|o, v| Registra2( oRecarga, oBrw, v) }
   oCol:cEditPicture  := "999"
   oCol:oDataFont     := oFont3




   // ======**********************************************************/
   oCol := oBrw:AddCol()
   oCol:bStrData      := { || transform(MyCampo(oRecarga,"rec09"),'999') }     // nueve
   oCol:cHeader       := "E-09"
    oCol:nDataStrAlign := AL_RIGHT
   oCol:lAllowSizing  := .f.
   oCol:oDataFont     := oFont3

   oCol := oBrw:AddCol()
   oCol:bStrData      := { || transform(MyCampo(oRecarga,"exi09"),'999') }     // diez
   oCol:cHeader       := "R-09"
    oCol:nDataStrAlign := AL_RIGHT
   oCol:lAllowSizing  := .f.
    oCol:nEditType     := EDIT_GET
   oCol:bEditValue    := {|| oRecarga:fieldget( "exi09" )}
   oCol:cDataType     := "N"
   oCol:bOnPostEdit   := {|o, v|   oRecarga:fieldput('exi09', v), oRecarga:update(), Suma1(), oBrw:refresh() }
   oCol:cEditPicture  := "999"
   oCol:oDataFont     := oFont3


   // ====********************** ****************************** */
   oCol := oBrw:AddCol()
   oCol:bStrData      := { || transform(MyCampo(oRecarga,"rec10"),'999') }   // once
   oCol:cHeader       := "E-10"
    oCol:nDataStrAlign := AL_RIGHT
   oCol:lAllowSizing  := .f.
   oCol:oDataFont     := oFont3

   oCol := oBrw:AddCol()
   oCol:bStrData      := { || transform(MyCampo(oRecarga,"exi10"),'999') }   // doce
   oCol:cHeader       := "R-10"
    oCol:nDataStrAlign := AL_RIGHT
   oCol:lAllowSizing  := .f.
    oCol:nEditType     := EDIT_GET
   oCol:bEditValue    := {|| oRecarga:fieldget( "exi10" )}
   oCol:cDataType     := "N"
   oCol:bOnPostEdit   := {|o, v|   oRecarga:fieldput('exi10', v), oRecarga:update(), Suma1(), oBrw:refresh() }
   oCol:cEditPicture  := "999"
   oCol:oDataFont     := oFont3

  /* ************************************************************************************* */

   oCol := oBrw:AddCol()
   oCol:bStrData      := { || transform(MyCampo(oRecarga,"rec11"),'999') }   // trece
   oCol:cHeader       := "E-11"
    oCol:nDataStrAlign := AL_RIGHT
   oCol:lAllowSizing  := .f.
   oCol:oDataFont     := oFont3

   oCol := oBrw:AddCol()
   oCol:bStrData      := { || transform(MyCampo(oRecarga,"exi11"),'999') }   // catorce
   oCol:cHeader       := "R-11"
    oCol:nDataStrAlign := AL_RIGHT
   oCol:lAllowSizing  := .f.
    oCol:nEditType     := EDIT_GET
   oCol:bEditValue    := {|| oRecarga:fieldget( "exi11" )}
   oCol:cDataType     := "N"
   oCol:bOnPostEdit   := {|o, v|   oRecarga:fieldput('exi11', v), oRecarga:update(), Suma1(), oBrw:refresh() }
   oCol:cEditPicture  := "999"
   oCol:oDataFont     := oFont3


   /***********************************************************************************************/

   oCol := oBrw:AddCol()
   oCol:bStrData      := { || transform(MyCampo(oRecarga,"rec12"),'999') }     // quince
   oCol:cHeader       := "E-12"
    oCol:nDataStrAlign := AL_RIGHT
   oCol:lAllowSizing  := .f.
   oCol:oDataFont     := oFont3

   oCol := oBrw:AddCol()
   oCol:bStrData      := { || transform(MyCampo(oRecarga,"exi12"),'9999') }     // diez y seis
   oCol:cHeader       := "R-12"
    oCol:nDataStrAlign := AL_RIGHT
   oCol:lAllowSizing  := .f.
    oCol:nEditType     := EDIT_GET
   oCol:bEditValue    := {|| oRecarga:fieldget( "exi12" )}
   oCol:cDataType     := "N"
   oCol:bOnPostEdit   := {|o, v|   oRecarga:fieldput('exi12', v), oRecarga:update(), Suma1(), oBrw:refresh() }
   oCol:cEditPicture  := "999"
   oCol:oDataFont     := oFont3

   // **************************************** 17 y 18 ***********************************

   oCol := oBrw:AddCol()
   oCol:bStrData      := { || transform(MyCampo(oRecarga,"rec13"),'999') }     // diez y siete
   oCol:cHeader       := "E-13"
    oCol:nDataStrAlign := AL_RIGHT
   oCol:oDataFont     := oFont3
   oCol:lAllowSizing  := .f.

   oCol := oBrw:AddCol()
   oCol:bStrData      := { || transform(MyCampo(oRecarga,"exi13"),'999') }     // diez y ocho
   oCol:cHeader       := "R-13"
    oCol:nDataStrAlign := AL_RIGHT
   oCol:lAllowSizing  := .f.
    oCol:nEditType     := EDIT_GET
   oCol:bEditValue    := {|| oRecarga:fieldget( "exi13" )}
   oCol:cDataType     := "N"
[size=150]   oCol:bOnPostEdit   := {|o, v|   oRecarga:fieldput('exi13', v), oRecarga:update(), Suma1(), oBrw:refresh() }[/size] // error aqui
   oCol:cEditPicture  := "999"
   oCol:oDataFont     := oFont3




   oBrw:CreateFromResource(101)

   // oBrw:nMarqueeStyle       := MARQSTYLE_HIGHLROW // Con cursor de todo el renglón
   oBrw:nMarqueeStyle       := MARQSTYLE_HIGHLCELL
   oBrw:nColDividerStyle    := LINESTYLE_BLACK
   oBrw:nRowDividerStyle    := LINESTYLE_BLACK
   oBrw:nColDividerStyle    := LINESTYLE_LIGHTGRAY
   oBrw:nRowDividerStyle    := LINESTYLE_LIGHTGRAY
   oBrw:lColDividerComplete := (.t.) // (.T.) Mantiene siempre llena la pantalla
   oBrw:nHeaderHeight       := 25 // Altura de los encabezados
   oBrw:nRowHeight          := 18 // Altura del renglón
   oBrw:nHeaderLines        := 1 // Número de líneas de encabezados
   oBrw:nDataLines          := 1 // Número de líneas de detalle
   oBrw:nFooterHeight       := 20 // Altura del footer
   oBrw:nFooterLines        := 1 // Número de líneas en el footer
   oBrw:lFooter             := (.T.) // Sí queremos línea de footer
   oBrw:lHScroll            := (.F.) // Quitamos el scroll horizontal
   oBrw:nFreeze             := 6


   //oBrw:bKeyDown     := { | nKey | MisTeclas( nKey) }

   oBrw:bClrHeader := { || {CLR_MAGENTA,CLR_WHITE }}
     //oBrw:bClrStd    := { || {CLR_RED,CLR_WHITE } }
   //oBrw:bChange = { || Actualiza() }

   oBrw:bClrFooter := { || {CLR_GREEN,CLR_WHITE } }
   oBrw:bClrSel    := { || {CLR_CYAN,CLR_WHITE } }

   //oBrw:aCols[ 05 ]:bClrStd := {||{CLR_HRED, CLR_WHITE } }   // repartido

   oBrw:aCols[ 01 ]:bClrStd := {|| { iif( oRecarga:fieldGet('repartido') > 0, CLR_BLUE,  CLR_BLUE), CLR_WHITE } }  // codigo
   oBrw:aCols[ 02 ]:bClrStd := {|| { iif( oRecarga:fieldGet('repartido') > 0, CLR_BLUE,  CLR_BLUE), CLR_WHITE } }  // nombre
   oBrw:aCols[ 03 ]:bClrStd := {|| { iif( oRecarga:fieldGet('repartido') > 0, CLR_BLUE,  CLR_BLUE), CLR_WHITE } }  // precio
   oBrw:aCols[ 04 ]:bClrStd := {|| { iif( oRecarga:fieldGet('exi01')     > 0, CLR_GREEN, RGB( 115, 248, 251 )), RGB( 115, 248, 251 ) } }  // existencia
   oBrw:aCols[ 05 ]:bClrStd := {|| { iif( oRecarga:fieldGet('repartido') > 0, CLR_GREEN, RGB( 255, 215, 235 )), RGB( 255, 215, 235 ) } }  // repartido
   oBrw:aCols[ 06 ]:bClrStd := {|| { iif( oRecarga:fieldGet('saldo')    != 0, CLR_GREEN, RGB( 202, 255, 202 )), RGB( 202, 255, 202 ) } }  // saldo


   oBrw:aCols[ 07 ]:bClrStd := {|| { iif( oRecarga:fieldGet('rec02') > 0, CLR_MAGENTA, RGB( 255, 231, 206 )), RGB( 255, 231, 206 ) } }
   oBrw:aCols[ 08 ]:bClrStd := {|| { iif( oRecarga:fieldGet('exi02') > 0, CLR_MAGENTA, RGB( 255, 231, 206 )), RGB( 255, 231, 206 ) } }
   oBrw:aCols[ 09 ]:bClrStd := {|| { iif( oRecarga:fieldGet('rec09') > 0, CLR_MAGENTA, RGB( 191, 191, 255 )), RGB( 191, 191, 255 ) } }
   oBrw:aCols[ 10 ]:bClrStd := {|| { iif( oRecarga:fieldGet('exi09') > 0, CLR_MAGENTA, RGB( 191, 191, 255 )), RGB( 191, 191, 255 ) } }
   oBrw:aCols[ 11 ]:bClrStd := {|| { iif( oRecarga:fieldGet('rec10') > 0, CLR_MAGENTA, RGB( 240, 255, 255 )), RGB( 240, 255, 255 ) } }
   oBrw:aCols[ 12 ]:bClrStd := {|| { iif( oRecarga:fieldGet('exi10') > 0, CLR_MAGENTA, RGB( 240, 255, 255 )), RGB( 240, 255, 255 ) } }
   oBrw:aCols[ 13 ]:bClrStd := {|| { iif( oRecarga:fieldGet('rec11') > 0, CLR_MAGENTA, RGB( 204, 230, 230 )), RGB( 204, 230, 230 ) } }
   oBrw:aCols[ 14 ]:bClrStd := {|| { iif( oRecarga:fieldGet('exi11') > 0, CLR_MAGENTA, RGB( 204, 230, 230 )), RGB( 204, 230, 230 ) } }
   oBrw:aCols[ 15 ]:bClrStd := {|| { iif( oRecarga:fieldGet('rec12') > 0, CLR_MAGENTA, RGB( 255, 210, 235 )), RGB( 255, 210, 235 ) } }
   oBrw:aCols[ 16 ]:bClrStd := {|| { iif( oRecarga:fieldGet('exi12') > 0, CLR_MAGENTA, RGB( 255, 210, 235 )), RGB( 255, 210, 235 ) } }
   oBrw:aCols[ 17 ]:bClrStd := {|| { iif( oRecarga:fieldGet('rec13') > 0, CLR_MAGENTA, RGB( 217, 236, 255 )), RGB( 217, 236, 255 ) } }
   oBrw:aCols[ 18 ]:bClrStd := {|| { iif( oRecarga:fieldGet('exi13') > 0, CLR_MAGENTA, RGB( 217, 236, 255 )), RGB( 217, 236, 255 ) } }

   oBrw:aCols[ 07 ]:bClrEdit       := oBrw:bClrSel
   oBrw:aCols[ 08 ]:bClrEdit       := oBrw:bClrSel
   oBrw:aCols[ 09 ]:bClrEdit       := oBrw:bClrStd
   oBrw:aCols[ 10 ]:bClrEdit       := oBrw:bClrSel
   oBrw:aCols[ 11 ]:bClrEdit       := oBrw:bClrSel
   oBrw:aCols[ 12 ]:bClrEdit       := oBrw:bClrStd
   oBrw:aCols[ 13 ]:bClrEdit       := oBrw:bClrSel
   oBrw:aCols[ 14 ]:bClrEdit       := oBrw:bClrSel
   oBrw:aCols[ 15 ]:bClrEdit       := oBrw:bClrStd
   oBrw:aCols[ 16 ]:bClrEdit       := oBrw:bClrSel
   oBrw:aCols[ 17 ]:bClrEdit       := oBrw:bClrSel
   oBrw:aCols[ 18 ]:bClrEdit       := oBrw:bClrStd




    ACTIVATE DIALOG oDlg CENTER ON INIT CreaBarra(oDlg)
    oFont1:end()
    oFont2:end()
    oFont3:end()
RETURN NIL

 

Re: Error MYSql UPDATE

Posted: Tue Mar 30, 2010 1:34 am
by jponce
Si no te pasa con todos los registros verfica que el que te da error no lleve comillas ", cuando lleva comillas mysql lo toma como un campo adicional y entonces devuelve ese error o ya sea que tambien lleve un valor nulo, si queres publica la consulta del insert que te esta dando el error yo te puedo ayudar.

Atentamente
Julio Ponce

Re: Error MYSql UPDATE

Posted: Wed Mar 31, 2010 5:22 pm
by Mauricio
JPonce :)

Gracias.

ya lo resolvi, lo que pasa es que tenia un servidor con Linux y MySql 4.2, lo cambie a un servidor Linux Debian con MySql 5.02.1 y ahi empezo a patalear.

volvi a crear las estructuras de cero, con sus llaves primarias y ya con eso funciono.

gracias.

:mrgreen: