Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Conexión con bases de datos (https://www.clubdelphi.com/foros/forumdisplay.php?f=2)
-   -   cuantos querys???? (https://www.clubdelphi.com/foros/showthread.php?t=21163)

kryna 09-05-2005 14:28:41

cuantos querys????
 
Hola!!!!!!!!!!

Quisiera me explicaran si para la consulta con querys de n tablas.. necesito tantos querys y ds como numeros de tablas o hay alguna manera de simplificar eso...

Imaginense que tengo una aplicacion de 10 tablas y deseo realizar una busqueda por quedio de querys usando DBEdits o Edits de las diferentes tablas que estan enlazadas por un campo cumun codigo.. en el sql de query coloco la instruccion
Código:


SELECT * FROM clientes, datos, pedidos,................

WHERE clientes.nome = datos.nome

AND clientes.nome = :codigo...........
......................

y asi con las 10 tablas........

mi pregunta es: Necesito un query para cada otra o cual sera la manera de realizar la busqueda y mostrar los registro de una manera mas simple......

marcoszorrilla 09-05-2005 14:42:06

Si las tablas como dices tienen un campo en común solamente necesitas una Consulta.
Código SQL [-]
 Select loquesea, xxxxx
 From Tabla1 as t1, Tabla2 as t2, tabla3 as T3
 Where t1.codigo = t2.codigo And t3.codigo = t2.codigo

Un Saludo.

kryna 09-05-2005 15:52:54

hola!!!!!!!!!

ok perfecto y para la inclusion y modificacion de registros como tendia que hacerlos............

tambien con un solo query????... la insercion la estoy haciendo de esta manera y para una tabla pero para diez
Código:

ZQuery1.Sql.Text := 'INSERT INTO clientes (nome,endereco,telefone) VALUES ("'+Edit1.Text+'",'+'"'+Edit2.Text+'",'+'"'+Edit3.Text+'")';
ZQuery1.execsql;

el codigo sql es el suiguiente
Código:


SELECT * FROM clientes
, datos, pedidos.........

WHERE clientes.nome = datos.nome and datos.nome = pedidos.nome ............

and clientes.nome = :nombre


y la modificacion asi:
Código:


ZQuery4.sql.clear;
  ZQuery4.sql.text := 'UPDATE clientes SET clientes.nome = :codigo';
ZQuery4.ParamByName('Codigo').AsString := edit1.text;
ZQuery4.ExecSql;


marcoszorrilla 09-05-2005 19:47:58

Generalmente las consultas que involucran varias tablas a la vez no son actualizables, depende con que tipo de tablas trabajes, por ejemplo para las Paradox, no serían actualizables en este caso, y tendrías que utilizar el componente TUpdateSql, para logar la actualización.

Un Saludo.

kryna 09-05-2005 20:39:51

no uso paradox........ Estoy utilizando tablas en mysql 5.0 ...

Podria como haria para insertar y modificar los registro de las tablas casi al mismo tiempo......

Gracias

roman 09-05-2005 20:50:13

Cita:

Empezado por kryna
no uso paradox........ Estoy utilizando tablas en mysql 5.0 ...

Entonces sería recomendable que indicases qué componentes estás usando.

Suponiendo, por el prefijo Z, que usas Zeos y siendo que Marcos te mencionó la componente TUpdateSql, no hay más que fijarse en la paleta de Zeos para darse cuenta de que hay una componente de nombre sospechosamente similar: TZUpdateSql.

// Saludos


La franja horaria es GMT +2. Ahora son las 00:31:20.

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