![]() |
![]() |
![]() |
![]() |
![]() |
FTP | ![]() |
![]() |
CCD | ![]() |
![]() |
Buscar | ![]() |
![]() |
Trucos | ![]() |
![]() |
Trabajo | ![]() |
![]() |
Foros | ![]() |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Que Tipo de Campo Usar??
Hola a todos.
Tengo un peque~o problema y es el siguiente: Que tipo de campo MySQL se debe usar para que me guarde una ruta de un archivo/imagen. Resulta que tengo un Campo tipo Varchar en mi DB MySQL llamado "FOTO". hago un insert como este: Código:
INSERT foto INTO mytable VALUES ('C:\MisImagenes\Imagen1.jpg') Código:
C:MisImagenesImagen1.jpg Alguna idea? |
#2
|
|||
|
|||
![]() Hola, yo siempre utilizo la propiedad 'Params' de una Query, esto te permite introducir en tu base de datos cualquier cadena de texto.
Por ejemplo: SQL.Add('insert into articulos' + ' (codigo, nombre) values(' + IntToStr(wcodigo.asInteger) + ',:pnombre)'); Params.ParamByName('pnombre').asString := wnombre.Text; ExecSQL; wnombre en este caso es un TEdit pero puede ser cualquier otro objeto que su propiedad devuelva un String. Espero haberte ayudado. |
#3
|
|||
|
|||
Has probado a insertar una rura en un campo varchar??
por que aunque lo insertes desde el mismo mysql (Sin delphi) le quita los espacios y los "/"... ayuda please.. que tipo de campo soporta que el inserten cualkier tipo de caracteres? saludo. |
#4
|
||||
|
||||
El caracter \ en MySql es un caracter de escape por lo que debes usarlo doble \\. Por ejemplo, en lugar de insertar
'C:\Mis Imagenes\Imagen1.jpg' insertas 'C:\\Mis Imagenes\\Imagen1.jpg' Lo de los espacios no me queda nada claro. Que yo sepa MySql únicamente elimina los espacios finales en un campo VarChar pero no los iniciales ni intermedios y simplemente los elimina, no los sustituye por un _. En tu ejemplo del primer mensaje no veo que te haya quedado ningun _ y el único espacio que se "pierde" podría ser el de "Mis Imagenes" pero en tu ejemplo lo insertas sin espacio. Revisa esto de los espacios para aseguratte de lo que pasa. // Saludos |
#5
|
|||
|
|||
Hey Roman gracias, tienes razon en todo con un doble \ me funciona perfectamente desde la linea de comandos mysql>
ejemplo: Cita:
ahora hay un pequeño problemita, como lo hago desde delphi? osea lo que tengo en Delphi es un componente Timage en conjunto con un OpenPictureDialog, y tomo la ruta del archivo con la propiedad Filename, ejemplo: Cita:
alguna solucion a este ultimo problema sobre esto? PD: Disculpas por tantas preguntas ![]() |
#6
|
||||
|
||||
Sustituye
OpenPictureDialog1.FileName por StringReplace(OpenPictureDialog1.FileName, '\', '\\', [rfReplaceAll]) StringReplace está en la unidad StrUtils. // Saludos |
#7
|
|||
|
|||
![]() MasterXP escribió:
"Has probado a insertar una rura en un campo varchar??" Por supuesto y funciona perfectamente. "por que aunque lo insertes desde el mismo mysql (Sin delphi) le quita los espacios y los "/"..." Eso es porque la propiedad 'Params' solamente funciona desde Delphi; además la ventaja de utilizar 'Params' es que vale para cualquier cadena incluyendo cualquier símbolo especial con independencia del motor de base de datos a utilizar. Un saludo |
#8
|
|||
|
|||
Cita:
Cita:
Gracias Amigos. |
![]() |
Herramientas | Buscar en Tema |
Desplegado | |
|
|
![]() |
|