Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 02-09-2015
luis77 luis77 is offline
Miembro
NULL
 
Registrado: ago 2015
Posts: 20
Poder: 0
luis77 Va por buen camino
tipo de datos varchar

hola buenos dias
estoy realizando una consulta busqueda la cual mi base de datos tengo una tabla clientes
la cual estoy buscando por nombre .
mi codigo.

tabla clientes:
nombre= tipo de datos varchar;

Código Delphi [-]

procedure TForm1.boton1Click(Sender: TObject);

begin
adoquery1.Close;
ADOQUERY1.Parameters.ParamByName('nombre').Value:=Edit1.Text;
adoquery1.Open;
end;
pero me marcar error
"error al convertir el tipo de datos varchar a bigint."
espero que alguien me puedo ayudar
gracias.....
Responder Con Cita
  #2  
Antiguo 02-09-2015
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.022
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
¿Y la consulta?
Responder Con Cita
  #3  
Antiguo 02-09-2015
luis77 luis77 is offline
Miembro
NULL
 
Registrado: ago 2015
Posts: 20
Poder: 0
luis77 Va por buen camino
lo saque
de aqui el ejemplo crees k ya no es tan veraz??

http://www.forokeys.com/foro/demos-y...-sql-y-delphi/
gracias por responder saludos
Responder Con Cita
  #4  
Antiguo 02-09-2015
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.022
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Vale, pero la pregunta es ¿cual es la consulta sql que tú haces?, ¿cual es la tabla de la base de datos? ¿qué campos tienes y de qué tipo son? ¿qué componentes de bases de datos tiene asociado? ¿alguno de tipo blob para imagen? etc.
Responder Con Cita
  #5  
Antiguo 02-09-2015
luis77 luis77 is offline
Miembro
NULL
 
Registrado: ago 2015
Posts: 20
Poder: 0
luis77 Va por buen camino
la primera compa
clientes
te adjunte la imagen de mi base
tengoa sociado
2 grid,1 adotable ,2 datasource, 1 caja de texto y un boton
en parameters le dejo string
saludos ...
gracias por tomar tu tiempo
Imágenes Adjuntas
Tipo de Archivo: jpg bd.jpg (8,2 KB, 8 visitas)
Responder Con Cita
  #6  
Antiguo 02-09-2015
Avatar de AgustinOrtu
[AgustinOrtu] AgustinOrtu is offline
Miembro Premium
NULL
 
Registrado: ago 2013
Ubicación: Argentina
Posts: 1.858
Poder: 15
AgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en bruto
No se ve nada la foto

No es necesario que configures nada desde tiempo de diseño (a mi personalmente me parece muy engorroso)

Es mucho mas sencillo y claro hacerlo por codigo; Andar revolviendo propiedades y ver que componente se conecta con quien, y demas en tiempo de diseño es mala idea

Basicamente lo que tenes que hacer es algo asi:

Coincidencia total/exacta:

Código Delphi [-]
  adoquery1.SQL.Text := ' SELECT * FROM NombreTabla WHERE NombreCampo = :Nombre ';
  adoquery1.Close;
  adoquery1.Parameters.ParamByName('nombre').Value := Edit1.Text;
  adoquery1.Open;

Coincidencia parcial:

Código Delphi [-]
  adoquery1.SQL.Text := ' SELECT * FROM NombreTabla WHERE NombreCampo LIKE :Nombre ';
  adoquery1.Close;
  adoquery1.Parameters.ParamByName('nombre').Value := Edit1.Text + '%';
  adoquery1.Open;

Tener en cuenta que el campo que especifiques en NombreCampo debe ser de tipo string en la base de datos. Dependiendo de la misma puede ser varchar, nvarchar, text, etc
Responder Con Cita
  #7  
Antiguo 02-09-2015
luis77 luis77 is offline
Miembro
NULL
 
Registrado: ago 2015
Posts: 20
Poder: 0
luis77 Va por buen camino
gracias por tu respuesta lo intentare
saludos
Responder Con Cita
  #8  
Antiguo 02-09-2015
luis77 luis77 is offline
Miembro
NULL
 
Registrado: ago 2015
Posts: 20
Poder: 0
luis77 Va por buen camino
me indica parameters no encontrado
no estara encontrando el compo de la base de datos ???
Código Delphi [-]

procedure TForm1.boton1Click(Sender: TObject);

begin
adoquery1.SQL.Text := ' SELECT * from clientes WHERE Nombre =nombre ';
  adoquery1.Close;
  adoquery1.Parameters.ParamByName('nombre').DataType := ftString;
  adoquery1.Parameters.ParamByName('nombre').Value := Edit1.Text;
  adoquery1.Open;
end;

end.
gracias
saludos
Responder Con Cita
  #9  
Antiguo 02-09-2015
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.022
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Cita:
Empezado por luis77 Ver Mensaje
me indica parameters no encontrado
A ver si hacemos un buen copia->pega
Responder Con Cita
  #10  
Antiguo 02-09-2015
Avatar de AgustinOrtu
[AgustinOrtu] AgustinOrtu is offline
Miembro Premium
NULL
 
Registrado: ago 2013
Ubicación: Argentina
Posts: 1.858
Poder: 15
AgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en bruto
Para indicar un parametro en una consulta hay que anteponer el : (dos puntos) antes del nombre del parametro

En tu caso escribiste:

Código Delphi [-]
  adoquery1.SQL.Text := ' SELECT * from clientes WHERE Nombre =nombre ';


Deberia ser:

Código Delphi [-]
  adoquery1.SQL.Text := ' SELECT * from clientes WHERE Nombre = :nombre ';

Otro caso que suelo ver que da ese error es que no esta la conexion asignada al componente ADOQuery. No se si sera tu caso, primero tenes el error de sintaxis
Responder Con Cita
  #11  
Antiguo 02-09-2015
orodriguezca orodriguezca is offline
Miembro
 
Registrado: ene 2009
Posts: 221
Poder: 16
orodriguezca Va por buen camino
Cita:
Empezado por AgustinOrtu Ver Mensaje

No es necesario que configures nada desde tiempo de diseño (a mi personalmente me parece muy engorroso)
No quiero entrar en debates pero no estoy del todo de acuerdo con el anterior comentario: para mi no hay nada más cómodo y simple que configurar componentes en tiempo de diseño, ya sean visuales o de acceso a datos.

Creo que uno de los puntos más fuertes que tiene Delphi es casualmente que el desarrollador pueda hacer muchas cosas en tiempo de diseño y poder ver, en una gran cantidad de casos, los resultados sin siquiera ejecutar la aplicación. Delphi, como lenguaje RAD casualmente, promueve como buenas practicas definir y configurar los componentes en tiempo de diseño siempre que esto sea posible. En lo que si estoy de acuerdo es que cuando se usa esta técnica de definir cosas en tiempo de diseño es muy fácil hechar a la basura varias horas de trabajo con un involuntario par de clicks.

Por supuesto, no siempre se puede hacer todo en tiempo de diseño. De hecho, dos de las aplicaciones que he desarrollado construyen la mayoría de los componentes visuales y de acceso a datos "al vuelo" basados en las definiciones almacenadas en una base de datos, pero mi preferencia es apoyar mis desarrollos en el Design-Time.
Responder Con Cita
  #12  
Antiguo 02-09-2015
Avatar de AgustinOrtu
[AgustinOrtu] AgustinOrtu is offline
Miembro Premium
NULL
 
Registrado: ago 2013
Ubicación: Argentina
Posts: 1.858
Poder: 15
AgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en bruto
Cita:
Empezado por orodriguezca Ver Mensaje
[...]
No creo que este mal que se debata

Entiendo tu punto pero no comparto por lo siguiente. Tengo mala memoria de corto plazo

Entonces si estoy usando componentes query no puedo andar acordandome de cada parametro, su tipo, cada sql que hay aqui o alla, que tipo son los campos, etc

Prefiero tener un bloque de codigo donde esta todo junto y de un solo vistazo tengo toda la informacion que necesito.

Sino que me pasa? estoy en el editor de codigo.. pero que parametros tenia el qBuscarPersonas? A si, cambio a modo diseño busco el query, voy a la coleccion de parametros, abro el sql, vuelta al codigo.. y resulta que ya me olvide lo que estaba haciendo

Al hacer todo por codigo levanto un poco la vista y ahi esta todo: nombre de parametros, tipo, la propia consulta sql, hasta puedo copiar y pegar su nombre

En realidad yo prefiero usar el diseñador para lo que es solo visual: controles, formularios y mas recientemente LiveBindings. Si es algo que tengo que andar usando en otro lado, prefiero hacerlo por codigo.

Al fin y al cabo tampoco es que se ahorra mucho: Es un poco mas de tipeo pero las configuraciones de los componentes en algun lado hay que hacerlas
Responder Con Cita
  #13  
Antiguo 02-09-2015
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.022
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Cita:
Empezado por AgustinOrtu Ver Mensaje
Entiendo tu punto pero no comparto por lo siguiente. Tengo mala memoria de corto plazo
Ese es uno de los principales problemas.
Te vuelves loco con cosas del estilo: "¡¡¡pero por qué no salen los registros que tienen que salir!!!" y el problema resulta que es porque se puso en modo diseño un filtro en el dataset. ¿Quién se acuerda de eso cuando estás revisando código un año después, o no lo has escrito tú?
Responder Con Cita
  #14  
Antiguo 02-09-2015
orodriguezca orodriguezca is offline
Miembro
 
Registrado: ene 2009
Posts: 221
Poder: 16
orodriguezca Va por buen camino
Entiendo totalmente lo que dicen tanto AgustinOrtu y Casimiro. De hecho también he sufrido las situaciones planteadas por ambos.

Para no desvirtuar el tema propongo que llevemos estas ideas al foro de debates, exponemos nuestros argumentos, buenas y malas experiencias y asi aprendemos todos.
Responder Con Cita
  #15  
Antiguo 03-09-2015
luis77 luis77 is offline
Miembro
NULL
 
Registrado: ago 2015
Posts: 20
Poder: 0
luis77 Va por buen camino
muchas gracias por sus comentarios si resulto como me comentan y tome en cuenta sus comentarios
todo lo estoy haciend por codigo saludos
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Tipo de datos skara Varios 5 16-03-2015 19:14:14
que tipo de datos utilizar para guardar cualquier tipo de archivo jeremiselxi MS SQL Server 2 08-12-2014 20:30:00
cambiar tipo de dato blob a varchar en firebird ingabraham Varios 4 13-08-2010 01:13:49
Ordenar En Sql Un Dato Tipo Varchar ingabraham SQL 6 20-06-2010 04:01:35
Cómo cambiar el tamaño de un campo tipo varchar subzero Firebird e Interbase 3 12-10-2007 15:57:27


La franja horaria es GMT +2. Ahora son las 11:01:45.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi