FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
utilizacion del tquery y la propiedad params
Buenas tardes, me veo en la necesidad de preguntar si alguien puede ayudarme con el componente tquery.
Pasa lo siguiente, yo ya he realizado consultas con el componente tquery sobre una o varias tablas cargando la consulta en una variable string y luego limpiando el query y añadiendo la sentencia. asi asignando la consulta consulta1:='insert into tabla (numero) values ('+IntToStr(numero)+');'; Query1.SQL.Clear; Query1.SQL.Add(consulta1); Query1.ExecSQL; y luego cargandola y ejecutandola. El problema consiste en esto. en clase hemos visto otra manera de hacer las consultas con los querys pero no comprendo algunas cosas que utilizan para trabajar los querys, a continuacion anexare un pedazo de codigo fuente y documentare en que parte tengo las dudas a ver si alguien me puede ayudar a documentar el codigo para entenderlo mejor. procedure TForm1.FormCreate(Sender: TObject); begin Query2.Open; while not Query2.EOF do begin ListBox1.Items.Add (Query2.Fields [0].AsString); Query2.Next; end; ListBox1.ItemIndex := 0; Query1.Prepare; Query1.Params[0].Value := ListBox1.Items [0]; Query1.Open; end; **** ******** select distinct Custno from orders <------ valor inicial del query2 ************* select * from employee where custno=:Custno <-- valor inicial del query1 ************* en el oncreate si entiendo el pedazo de codigo donde hace la consulta que tiene precargada y luego carga uno por uno los nombres de los campos en el listbox pero luego viene el prepare y despues esta instruccion Query1.Params[0].Value := ListBox1.Items [0]; aqui si no entiendo que sucede, ya que desconozco el componente listbox y tambien desconozco para que se utiliza la propiedad params, tambien quisiera saber por que hace referencia la posicion 0 ¿es un arreglo? y que gana con eso, ya que inmediatamente despues hace el open ¿es lo mismo el open que el ExecSQL?, cuales son sus diferencias. luego cuando dan click en el list box entiendo como que asigna un nuevo campo a params, pero que se hace con ese campo, creo que pasa el parametro para eliminar ese campo de la consulta o algo por el estilo. procedure TForm1.ListBox1Click(Sender: TObject); begin Query1.Close; Query1.Params[0].Value := ListBox1.Items[Listbox1.ItemIndex]; Query1.Open; end; si alguien pudiera darme una explicacion sobre que son los valores params y para que son utiles, como se utilizan le agradeceria de sobre manera. Gracias Desve |
|
|
|