Delphi-Interbase 2 URGENTE

Hola gaunmanuel, antes que nada gracias por la respuesta anterior, que fue sencilla, directa y concreta, e hice lo que me dijiste, aparentemente aparte del IBDatabase, IBQuery y IBUPdateSQL, también tengo que colocar un IBTransaction, y para realizar los Select tuve que poner un IBDataset, corrígeme si me equivoco, antes de darle RUN a la aplicación yo tengo el IBDatabase Connected en "False" y en la forma principal del programa le pongo IBDatabase1.Connected:=True; y exactamente cuando pasa por ahí el programa saca un error de "Operation Cancelled at User's Request", que la verdad no se porque dice que yo cancele la operación, bueno esa seria realmente mi única pregunta, ¿Por qué me sale ese error? Pero bueno, si me deseas dar algunos tips ahora que arranco en Interbase te lo agradeceré bastante, gracias, Ciao

1 Respuesta

Respuesta
1
Si perdón se me paso el IBTransaction muy bien.
Ahora el IBDataSet no es necesario el IBQuery puede hacer eso... yo no lo uso, pero dime que haces con IBDataSet y yo te lo explico como lo haces con el query. Ok.
En cuanto a tu error si esta muy raro, me supongo que ya tienes instalado Interbase.
Me dices que al momento de darle Connected := true, Intenta darle un test antes de ejecutar tu programa es decir activarlo en diseño para ver si te deja o ver que te marca ok...
Para lo del IBDataSet.. elimínalo no es necesario que lo uses, te voy a decir algo rapido para que manejes mejor tus aplicaciones ok (lógicamente es algo rapido ya que como comprenderás pues el tema es algo extenso pero con esto poco a poco te vas a ir familiarizando)
Pasos:
1.- Primero Creas un Modulo de Datos, el cual va a contener todos los componentes DB (querys, tables etc.) ok
2.- En el Modulo de Datos pones el IBDataBase el cual sera el único que se usara en toda tu aplicación(el único no habrá otro ok)
3. En el mismo Modulo de datos (DataModule) pones los IBQuerys los IBUpdates y el IBTransaction.. ok
en el IBQuery.SQL ahí puedes poner tu select * from tabla (ojo no bajo código sino con el inspector de objectos) ok.
4.- Luego pones el IBUpdateSQL conectado a ese query.. ok
5.- Luego en tu form agregas la unidad del Modulo de datos que creaste, para que así puedas tener acceso a los componentes que pusiste en el DAtaModule ok.(Uses nombre de la unidad)
6.- En la forma pones los siguientes componentes:
DataSource el cual lo conectaras al IBQuery ok, luego pones un DBEdit este lo conectas al DataSource y luego le seleccionas el campo que quieras que se muestre en el DBEdit(Propiedades DataSource y DataField respectivamente)
7. Existen otros componentes como DBGrid y DBNavigator los cuales los conectas igual que el DBEdit ok.
Bueno esto es Programación Orientada a objectos y así no tienes que hacer esto que me mencionas:
With IBDataset1 do
Try
DisableControls;
SelectSQL.Add('Select *');
SelectSQL.Add('From PRODUCTO');
SelectSQL.Add('WHERE NOMBRE='+ Combobox1.Text);
Edit1.Text:=floattostr(IBDataset1.Fields.Fields[3].AsFloat);
Finally
EnableControls;
End;
ESto no es necesario, y si te diste cuenta todo estos puntos que te di no hay absolutamente ninguna linea de código..
Bueno espero te sirva... y
Para el error de tu conexión algo tienes mal solo que es difícil desde aquí donde estoy yo checarlo, pero en los demos que trae delphi checate el el folder DB ahí vienen ejemplos y todos son con Interbase... checalo y si tienes más dudas sígueme escribiendo saludos
Bueno, el IBDataset lo uso básicamente por la sentencia SelectSQL, por ejemplo si quiero que determinado dato se escriba en un edit, hago algo así..
With IBDataset1 do
Try
DisableControls;
SelectSQL.Add('Select *');
SelectSQL.Add('From PRODUCTO');
SelectSQL.Add('WHERE NOMBRE='+ Combobox1.Text);
Edit1.Text:=floattostr(IBDataset1.Fields.Fields[3].AsFloat);
Finally
EnableControls;
End;
y creo que me funciona pero realmente todavia no estoy seguro, por el error que te conte, todavia no lo puedo ejecutar...Me imagino que con el IBQuery, es IBQuery1.SQL.Add('Select *'); etc....o mejor dime como, para kitar el Dataset, otra duda que tengo es que si en cada forma(form1) tienes que colocar un database, porque si lo pones en la forma principal y luego en otra forma por ejemplo "agregar cliente" no lo pones, cuando colocas los componentes IBX te piden que si con que database se conectan, pero como el Database esta solo en la forma principal, no te aparece ningun database a seleccionar, por eso pienso que tienes que colocar mas de un database, y si es asi, tengo que estar cerrando y abriendo determinados databases o como es? en serio me confundo mucho, y aparte siempre que me pide la contraseña de la base de datos se vuelve muy lenta mi makina, y por cierto..si ya tengo instalado el Interbase y tambien le hago un TEST a la base de datos y me sale "Succesful Connection", por eso no se lo k tiene, por favor ayudame, me urge, como decimos en mexico, lo necesito para ayer, gracias
WOW... créeme que he vivido engañando, me has ayudado mucho, por cierto, el error ya supe que era.. en el Editor del Database.. deseleccione el LOGIN PROMPT y ya no me dice nada, mil gracias

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas