Página 1 de 1

Comillas SIMPLES SQL

NotaPublicado: 2005-12-12 13:10 @590
por diegodnt
Hola, amigos.

Necesito que alguien me ayude. Tengo una aplicación que toma datos tipo string y lo pone en una variable... luego con esa variable consulta en mi base si el contenido de la variable ya está en la base y si está no la guarda y si no está hace otra cosa...

El problema es que en esa variable a veces hay caracteres como comillas simples. Ejemplo: D' NOIR y con este contenido en mi variable me genera un error debido a que tiene comillas simples.

Entonces lo que necesito es que cuando encuentre ese carácter le anteponga una '\' para que me funcione y después de hacer la consulta antes de guardarla se lo saque...

Quiero saber si existe una función en Perl que haga esto. En PHP se llama ADDSLASHES pero en Perl no la encontré. Si saben de otra alternativa también díganme, así pruebo y termino de una vez con esto...

MUCHAS GRACIAS

P.D.: soy muuuyyy novato en Perl. Sepan explicarme con detalle si no es mucha molesta, GRACIASSSSSSS.oOº :oops:

Re: comillas SIMPLES SQL

NotaPublicado: 2005-12-12 13:34 @607
por explorer
Si quieres 'escapar' todos los caracteres que no sean letras normales y corrientes, puedes usar la función quotemeta del Perl o la secuencia "\Q$x\E" (aqui, en Interpolation), que es lo mismo:
Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
  1. $nombre = "D'NOIR";
  2. print $nombre;            # D'NOIR
  3. print "\Q$nombre\E";      # D\'NOIR
  4. print quotemeta($nombre); # D\'NOIR
Coloreado en 0.002 segundos, usando GeSHi 1.0.8.4

NotaPublicado: 2005-12-12 15:09 @673
por kidd
Hola:

Si usas el módulo DBI, esto se hace automáticamente siempre y cuando pases las variables por medio de la función execute().

Hay un tutorial acerca de cómo conectarte a tus bases de datos con Perl usando el módulo DBI:
http://perlenespanol.com/archives-tut/000045.html


SALUDOS