Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   MySQL (https://www.clubdelphi.com/foros/forumdisplay.php?f=21)
-   -   Que hago, no se como hacerlo en MySql (https://www.clubdelphi.com/foros/showthread.php?t=25934)

pgraciap 07-10-2005 22:02:49

Que hago, no se como hacerlo en MySql
 
Hola a todos(as), estoy utilizando actualmente Delphi 7 con los componentes de Zeos
y Tengo instalada la version 4.1.15 de MySql.

Bueno el caso es este.

Tengo tres tablas con los siguientes campos.
Código:

* Tabla [Polizas] = PolID, Poliza, FechaFin.

* Tabla [CambioPoliza] = CamPolID, PolAnt, PolNue, FecFinAnt, FecFinNue, FecCam.

* Tabla [CntrlPol] = CntrlPol, PolNum.

Actualmente el proceso que hago esta en un programita que esta fuera del
programa principal, que hace lo siguiente.

1.- Por medio de un Query de SQL checa las poliza vencidas un dia anterior,
y si encuentra una le cambia la poliza a otro numero de poliza.

2.- Al hacer el cambio este afecta a las tres tablas, es decir:
2.1.- Checa en control el numero sonsecutivo y lo incrementa.
2.2.- Adiciona en CambioPoliza Todos los campos.
2.3.- Cambia en Poliza sus datos a los nuevos.

En la practica hace esto:
Código:

La Script sql arroja los siguientes datos

Poliza              FechaFin
F-14521          06/10/2005
F-75948          06/10/2005

* Tabla [CntrlPol] = CntrlPol, PolNum.
-Aqui Cambia PolNum+1

* Tabla [CambioPoliza] = CamPolID, PolAnt, PolNue, FecFinAnt, FecFinNue, FecCam.
-Aqui Adiciona todos los datos que tenemos:
PolAnt:= F14521, PolNue:= F:= 'F-'+PolNum, FecFinAnt:= 06/10/2005,
 FechFinNue:= 07/10/2005 FecCam:= 07/10/2005

* Tabla [Polizas] = PolID, Poliza, FechaFin.
-Aqui Cambia:
Poliza F-14521 por F-PolNum
FechaFin 06/10/2005 por 07/10/2005

y esto lo quiero pasar al MySQL pero no se como hacerlo ni como estructurarlo esto es para desaparecer el programa adicional y que el servidor solo lo haga, alguien sabe como hacerlo o que me diga donde
puedo encontar esta informacion, de antemano les doy las gracias.

Saludos a todos......

rvasquez21 07-10-2005 23:11:54

Creo que puede ser una solucion
 
En que motor de base de datos estas trabajando, existe una herramienta chulisima si es en Access que estas trabajando que se llama ms access to mysql que te importa de los mas apero. sino mysql-front y solo tienes que trabajar con un ADOQuery y presto

Att.
Rvasquez21

pgraciap 10-10-2005 17:29:52

Rvasquez21, gracias por la sugerencia.
pero lo que me indicas de trasladar los datos de access a mysql
ya lo hice.

El problema es que tengo dos programas.

uno es el maestro osea el sistema y el otro solo lo uso para
poder hacer cambios de una sola seleccion que cumplen
con los parametros de Query.

Y lo que pretendo es presisamente desaparecer el segundo
programa y que lo que este hace lo haga el servidor de MySql.

pero por desgracia no tengo la menor idea de como o con que se hace esto.
espero poder haber sido un poco mas especifico.... :D

lucasarts_18 11-10-2005 19:59:01

Hola:

Para hacer eso debes usar Procedimientos almacenados que se encuantran disponibles en MySQL 5.0 pero aún esta versión está en prueba..:(

pgraciap 11-10-2005 21:54:14

lucasarts_18: Que son los porcedimientos almacenados y como se usan o programan??? ha por cierto esta funcion estara en la version 4.1.15 de MySql. por que es la que estoy usando????

Saludos y gracias por tu respuesta... :D

lucasarts_18 11-10-2005 22:06:54

Cita:

Empezado por pgraciap
lucasarts_18: Que son los porcedimientos almacenados y como se usan o programan??? ha por cierto esta funcion estara en la version 4.1.15 de MySql. por que es la que estoy usando????

Los Procedimientos almacenados (Stored Procedure en Inglés) son procedimientos similares a cualquier lenguaje de porgramación, la diferencia es que la carga la lleva el servidor de BD en ves del cliente, se usa mucho para procesos complejos, para liberar carga a los clientes o bien para centralizar algunas tareas.
Lamentablemente no están disponibles en la versión que mencionas tú.

pgraciap 13-10-2005 17:36:31

lucasarts_18: gracias por tus comentarios tienes alguna otra alternativa que puedas usar???

lucasarts_18 14-10-2005 00:18:59

Hola:

Podrías probar la versión 5 de MySQL, sino me equivoco, tengo entendido que la programación de los SP está lista para usarse en esta versión, lo otro sería migrar a firebird..

Yo que tú lo haría, no pierdes nada y comienzas a aprender a usar procedimientos almacenados que yo por ciertos los conozco en SQL Server y algo en Oracle..Adelante no pierdes nada..:)


La franja horaria es GMT +2. Ahora son las 08:30:43.

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