PDA

Ver la Versión Completa : de paradox a mysql


kryna
20-04-2005, 21:42:17
Hola a Todos?

Mi pregunta es la siguiente.....

Tengo una aplicacion en delphi 7... y mi gestor es paradox 7...

Ahora debo cambiar el gestor de Paradox a Mysql... tengo la ventaja qlas tablas las puedo vaciar...

La razon por la que quiero cambiar es que me genera algunos errores la busqueda...
1) Cuando coloco en la aplicacion el campo de busqueda (codigo) no me toma en cuenta el ultimo registro...
la busqueda la estoy haciendo con un query y tengo una opcion EOF..
son tres tablas

if editorcod.text <> nil then
begin
qrycod.Close;
qrycod.ParamByName('Codigo').AsInteger := StrToInt(editorcod.text);
Dscod.dataset := qrycod;
qrycod.Open;
.
.
.
if qrycod.EOF then
ShowMessage('No encontré ningún Registro!');
end; *)

y el sql
SELECT especialidad.Cod_especialidad, especialidad.Descripcion_especialidad, especialidad.Orden, especialidad.Nota, concepto.Cod_especialidad, concepto.Cod_concepto, concepto.Descripcion_concepto, costos.Cod_concepto, costos.Fecha, costos.Costo
FROM especialidad, concepto, costos WHERE (especialidad.Cod_especialidad = concepto.Cod_especialidad) AND (concepto.Cod_concepto = costos.Cod_concepto) AND concepto.Cod_concepto = :Codigo

codigo es un parametro de tipo entero, requestlive = true, active = true.

2) cuando incluyo un registro.. me lo incluye dos veces , sin embargo al incluir el proximo se borra el primero y solo me queda uno...osea me sobreescribe el primer registo...
osea mi tabla tiene estos valores en el parametro codigo
cod_con 1,2,6,8,8

ahora le voy a incluir un registro cod_con cuyo valor es 16.. me va ha quedar ahora mi tabla asi.. cod_con 1,2,6,8,16,16

if codigo_con <> nil then
qrybus.Close;
qrybus.ParamByName('Codigo').AsInteger := StrToInt(codigo_con.text);
databus.dataset := qrybus;
qrybus.open;
if qrybus.EOF then
begin
Tbconcepto.Insert;
Tbconcepto.FieldByName('cod_concepto').AsString := clave2;
Tbconcepto.FieldByName('cod_especialidad').AsString := Clave;
Tbconcepto.Post;
Tbconcepto.Next;
Tbconcepto.FlushBuffers;
Tbconcepto.Close;



no se que pasa si es error de codigo o debe cambiar mi gestor y lo que sucede es que nunca he usado mysql y soy una novata en delphi... y realmente no se como puedo hacerlo...

ojala haya podido explicarme bien
gracias karina

marcoszorrilla
20-04-2005, 22:06:33
Pues no quiero desilusionarte, pero según lo que expones está algo dificil la cosa, sino conoces MYSql y en Delphi eres novata.

Yo lo que haría, es inventarme una explicación, lo más creible posible, para retrasar el cambio ya que el manejo de un nuevo motor de Bases de datos no es algo que se haga en un mes.

Una vez que te vayas viendo suelta, puedes ir poniendo por ejemplo la tabla de clientes a prueba....., más que nada para ir entreteniendo al personal y que de tiempo a dar el salto con garantías.

Un Saludo.

kryna
20-04-2005, 22:41:52
Bueno edite la pregunta para explicarme mejor ojala me entiendan y puedan ayudarme..
karina

roman
20-04-2005, 22:47:42
Quizá hago mal en responder ya que no he leído con detalle el problema en sí que tienes con Paradox, pero me gustaría comentarte algo:

Desde mi punto de vista Paradox es limitado pero no defectuoso.

Hay cosas que no hace simplemente por no tener la capacidad de ello pero lo que hace lo hace bien.

Teniendo el BDE bien configurado, los únicos errores que a mi me ha ocasionado son las corrupciones de índices, y esto sólo cuando falla abruptamente el suministro eléctrico. Error que por lo demás, teniendo previamente una rutina que genere los índices, se resuelve en cinco minutos.

No digo que recomiendo quedarse con Paradox; una migración a algo más potente siempre será sana. Pero no es una razón para el cambio el mero hecho de que algún error nuestro hace que las cosas no funcionen bien.

Considera que tales errores de programación serán los mismos o similares con otro motor que, además, desconozcamos.

Como dice Marcos, mi recomendación es que por el momento sigas con Paradox. Te llevará menos tiempo solventar los errores que tengas en tu código que aprender un nuevo motor de BD.

Aunque claro, siempre está la osadía :D

MySql, no es particularmente difícil y dependerá del tiempo que tengas. ¿Un mes? Posible, difícil pero posible.

Pero tienes que valorar que tan segura te sientes y del tiempo que tengas.

// Saludos