FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
ayuda con campos blob
Hola a todos, nuevamente el latoso de squenda jaja, bueno mi problema ahora es:
tengo un campo en donde requiero que mi cliente pueda capturar mas de 255 caracteres, de hecho el necesita capturar aproximadamente una hoja tamaño carta, asi que declare mi campo tipo BLOB SUB_TYPE 1, muy bien pero el problema es que nunca he usado este tipo y no se como hacerlo, de verdad no tengo ni idea, si alguien me pudiera ayudar mandandome algun ejemplo de como insertar y modificar dicho campo, estoy trabajando con interbase que viene con delphi 6, muchas gracias. saludos. |
#2
|
|||
|
|||
La forma mas sencilla es hacerlo como en principio se trabaja con todos los tipos de datos, asignadole su componente de edicion, es decir un campo de tipo string lo editas con un DBedit, a uno de tipo blob, si es como tu caso para texto, le asignas un DBMemo o DBRichEdit.
Saludos |
#3
|
|||
|
|||
Gracias Cahp pero no utilizo controles DB, alguna vez alguien me comento que se utilizaba algo llamado STREAM o algo asi, no lo recuerdo, asi que por favor aaayyuuuuudaaa!!, gracias.
|
#4
|
|||
|
|||
que utilizas para la edicion?
es decir donde escribes el texto? Si lo dices te puedo ayudar. Saludos |
#5
|
|||
|
|||
Hola CAHP, de antemano te agradezco tu atencion, mira yo utilizo controles normales, no uso controles db, en lugar de usar un DBEdit, uso un Edit, en lugar de usar un DBMemo uso un Memo, y asi me la llevo, como trabajo con puro query no me gustan los DB, y lo que hago que es que armo los querys al vuelo, ejemplo:
With qry_work, qry_work.SQL do begin Close; Clear; Add('INSERT INTO clientes ('); Add('Nombre,'); Add('Domicilio,'); Add('Observaciones'); Add('VALUES ('); Add(#39 + edt_nombre.text + #39 + ','); //Edit normal Add(#39 + edt_domicilio.text + #39 + ','); //Edit normal Add(#39 + m_observaciones.text + #39); //Memo normal execSQL; end; pero nunca he utilizado tipos BLOB, asi que no se si utilizarlo como utilizaría un memo normal o que? espero que esta informacion te ayude a ayudarme jaja, mucha gracias y saludos |
#6
|
||||
|
||||
Cita:
En todo caso, no podrás asignar el contenido de un campo Blob en la misma sentencia SQL (como haces en el ejemplo), por lo que tendrás que recurrir a sentencias con parámetros. Entonces en el parámetro puedes asignarle directamente su valor si solo vas a guardar una string, o bien puedes utilizar métodos como el LoadFromFile para cargar datos desde un archivo, e incluso el LoadFromStream para, como te han comentado, cargar datos de un Stream (útil en el caso de que vayas a cargar datos binarios). Saludos.
__________________
Marc Guillot (Hi ha 10 tipus de persones, els que saben binari i els que no). |
#7
|
|||
|
|||
Suponiendo la query:
Código:
Add('INSERT INTO clientes') Add('Nombre,'); Add('Domicilio,'); Add('Observaciones'); Add('VALUES (:nombre, :domicilio, :observaciones) '); seria: Código:
Query.parambyname('Nombre').AsString := EditNombre.Text; Query.parambyname('Domicilio').AsString := EditDomicilio.Text; Query.parambyname('Observaciones').AsString := Memo1.lines.Text; Query.ExecSQL; Saludos. |
#8
|
||||
|
||||
Has olvidado cerrar entre paréntesis la lista de campos, ejplo :
Código:
Add('INSERT INTO clientes (Nombre, Domicilio, Observaciones)'); Add('VALUES (:nombre, :domicilio, :observaciones) ');
__________________
Marc Guillot (Hi ha 10 tipus de persones, els que saben binari i els que no). |
#9
|
|||
|
|||
cierto, y puede ser que falte algo mas, lo he hecho de memoria.
Gracias. Saludos. |
#10
|
|||
|
|||
Como SQUENDA me envió un mensaje privado, y he visto el tema, publico aquí la respuesta
Cita:
|
#11
|
|||
|
|||
Hola a todos, pues solo quiero agradecer la ayuda para resolver mi problema, un saludo.
|
|
|
|