Página 1 de 1

Validar un string en Mysql

Enviado: 22 Mar 2021 13:49
por winca
Hola a Todos:

Alguien sabe como validar que los datos de un string, no tengan caracteres invalidos, por ejemplo la comilla simple ( ' ).

Necesito poder grabar los datos sin caracteres especiales .

Existe alguna funcion en harbour o Mysql que realice esto ?

Gracias,
Winca

Validar un string en Mysql

Enviado: 22 Mar 2021 16:21
por Fernando queiroz

Código: Selecionar todos

*************************************************************************
Function TIRACENTO(cStr)
********************* Retira Acentos e Letras de uma String ********************
***Static Function fRetiraAcento(cStr)
   cStr:= StrTran(cStr, [á], [a])  ; cStr:= StrTran(cStr, [à], [a])  ; cStr:= StrTran(cStr, [â], [a])
   cStr:= StrTran(cStr, [ã], [a])  ; cStr:= StrTran(cStr, [�], [A])  ; cStr:= StrTran(cStr, [À], [A])
   cStr:= StrTran(cStr, [Â], [A])  ; cStr:= StrTran(cStr, [Ã], [A])  ; cStr:= StrTran(cStr, [É], [E])
   cStr:= StrTran(cStr, [Ê], [E])  ; cStr:= StrTran(cStr, [é], [e])  ; cStr:= StrTran(cStr, [è], [e])
   cStr:= StrTran(cStr, [È], [e])  ; cStr:= StrTran(cStr, [ê], [e])  ; cStr:= StrTran(cStr, [í], [i])
   cStr:= StrTran(cStr, [ì], [i])  ; cStr:= StrTran(cStr, [�], [I])  ; cStr:= StrTran(cStr, [Ì], [I])
   cStr:= StrTran(cStr, [õ], [o])  ; cStr:= StrTran(cStr, [ô], [o])  ; cStr:= StrTran(cStr, [ó], [o])
   cStr:= StrTran(cStr, [ò], [o])  ; cStr:= StrTran(cStr, [o], [o])  ; cStr:= StrTran(cStr, [O], [O])
   cStr:= StrTran(cStr, [Ò], [O])  ; cStr:= StrTran(cStr, [Ó], [O])  ; cStr:= StrTran(cStr, [Ô], [O])
   cStr:= StrTran(cStr, [Õ], [O])  ; cStr:= StrTran(cStr, [ü], [u])  ; cStr:= StrTran(cStr, [ú], [u])
   cStr:= StrTran(cStr, [ù], [u])  ; cStr:= StrTran(cStr, [Ú], [U])  ; cStr:= StrTran(cStr, [Ù], [U])
   cStr:= StrTran(cStr, [Ü], [U])  ; cStr:= StrTran(cStr, [ç], [c])  ; cStr:= StrTran(cStr, [Ç], [C])
   cStr:= StrTran(cStr, [y], [y])  ; cStr:= StrTran(cStr, [ñ], [n])  ; cStr:= StrTran(cStr, [Ñ], [N])
   cStr:= StrTran(cStr, [º], [o.]) ; cStr:= StrTran(cStr, [°], [o.]) ; cStr:= StrTran(cStr, [ª], [a.])
   cStr:= StrTran(cStr, [&], [&]) ; cStr:= StrTran(cStr, ['], [\']); cStr:= StrTran(cStr, [D'], [D\']) 
   cStr:= StrTran(cStr, [Ç], [C]) ; cStr:= StrTran(cStr, [ç], [c]) 
   Return (cStr)

Validar un string en Mysql

Enviado: 22 Mar 2021 16:26
por winca
Hola ,

Muchas gracias por tu ayuda, la probare.

Validar un string en Mysql

Enviado: 22 Mar 2021 16:55
por JoséQuintas
Ou antes de gravar:

Código: Selecionar todos

cString := StrTran( cString, ['], [\'] )
Isso é para o caso de gravar caracteres "diferentes", a barra "\" indica que o próximo caractere deve ser usado exatamente como está.

\'xxx\' vai gravar 'xxx' com as aspas

No comando:

Código: Selecionar todos

UPDATE CADCLI SET NOME = '\'xxx\''
Sobre caracteres acentuados, depende da CODEPAGE da base de dados, e também da CODEPAGE do Harbour.

Validar un string en Mysql

Enviado: 22 Mar 2021 17:51
por winca
Don José,

muy buen ejemplo, muchas gracias.

Winca