Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 10-07-2008
cheoac cheoac is offline
Registrado
 
Registrado: dic 2007
Posts: 3
Poder: 0
cheoac Va por buen camino
Ayuda con un insert.....

Hola soy nuevo en el foro y tambien en delphi....tengo un problema que no se como remediarlo......tengo un formulario donde inserto datos.....cuando le doy al boton de insertar inserta los datos (me doy cuenta por o eo en la base de datos)...pero cuando cierro el formulario y abro otro dodne tengo un grid no aparencen los datos.......aparecen hasta que cierro toda la aplicacion y la vuelvo a abrir...este es mi codigo.....
Código:
 
Código Delphi [-]
query.Close;
 query.SQL.Clear;
 query.SQL.Text:='insert into candidatos(can_nom,can_apell,can_dir,can_tel,can_fecha,can_edad,can_mail,can_matricula,can_status,can_sexo,can_reg,can_par) values (:nom,:apell,:dir,:tel,:fecha,:edad,:mail,:matricula,:status,:sexo,:reg,:par)';
 query.Params.ParamByName('nom').Value:=edit1.Text;
 query.Params.ParamByName('apell').Value:=edit2.Text;
 query.Params.ParamByName('dir').Value:=edit3.Text;
 query.Params.ParamByName('tel').Value:=edit4.Text;
 query.Params.ParamByName('fecha').Value:=edit5.Text;
 query.Params.ParamByName('edad').Value:=edit6.Text;
 query.Params.ParamByName('mail').Value:=edit7.Text;
 query.Params.ParamByName('matricula').Value:=edit8.Text;
 query.Params.ParamByName('status').Value:=combobox1.Text;
 query.Params.ParamByName('sexo').Value:=rad1;
 query.Params.ParamByName('reg').Value:=combobox2.Text;
 query.Params.ParamByName('par').Value:=combobox3.Text;
 query.ExecSQL;
Responder Con Cita
  #2  
Antiguo 10-07-2008
Avatar de juanlaplata
juanlaplata juanlaplata is offline
Miembro
 
Registrado: ene 2007
Ubicación: La Plata, Bs. As. (Argentina)
Posts: 212
Poder: 18
juanlaplata Va por buen camino
Al abrir el formulario verifica el dataset asociado al grid, hacer un refresh si esta relacionado directamente con una tabla, o close-open si esta relacionado con una consulta o query. Pues si mirando la base, los datos estan , no queda alternativa de por que no verlos. Suerte.
Responder Con Cita
  #3  
Antiguo 10-07-2008
cheoac cheoac is offline
Registrado
 
Registrado: dic 2007
Posts: 3
Poder: 0
cheoac Va por buen camino
gracias pero ya lo prove y tampoco....incluso el problema esta tambien cuando lleno un combo los datos se ven reflejados hasta que cierro y abro por completo la aplicacion.....
Responder Con Cita
  #4  
Antiguo 10-07-2008
[coso] coso is offline
Miembro Premium
 
Registrado: may 2008
Ubicación: Girona
Posts: 1.678
Poder: 0
coso Va por buen camino
hola cuando quieras ver los datos, usa el select

Código Delphi [-]
query1.Active := false;
query1.SQL.Text := 'select * from tabla';
query1.Active := true;

y deja la query activa (el datasource del dbgrid debe apuntar a un datasource el cual tenga por dataset query1)
Responder Con Cita
  #5  
Antiguo 10-07-2008
Avatar de PepeLolo
PepeLolo PepeLolo is offline
Miembro
 
Registrado: jun 2003
Ubicación: Fuenlabrada - Madrid - Espagna
Posts: 265
Poder: 21
PepeLolo Va por buen camino
Te pasa porque tienes una transacción que se abre cuando arrancas la aplicación y se cierra cuando sales de esta.

Tienes que crear una transacción para el insert y commit para finalizarla. De ese modo podrás ver los datos en la rejilla.

un saludo.
__________________
PepeLolo
El hombre el único virus que mide más de unas cuantas micras
Responder Con Cita
  #6  
Antiguo 10-07-2008
cheoac cheoac is offline
Registrado
 
Registrado: dic 2007
Posts: 3
Poder: 0
cheoac Va por buen camino
ya probe lo me estan diciendo pero no ams no jajaja.....o algo estay haciendo mal....en mi formulario del insert tengo un SQLconnection-> y un SQLquery...y en el boton tengo el codigo que antes menciones......en mi formulario dodne tengo el grid tengo un: SQLconnection->SQLquery->datasetprovider->clientdataset->datasource->dbgrid->dbnavigator......asi son mis relaciones.......pero les agradeceria si me explican lo delas transacines...mil gracias....
Responder Con Cita
  #7  
Antiguo 10-07-2008
[coso] coso is offline
Miembro Premium
 
Registrado: may 2008
Ubicación: Girona
Posts: 1.678
Poder: 0
coso Va por buen camino
SQLconnection->query1->datasource->dbgrid
SQLconnection->query1->datasource->dbnavigator

si para el insert usas otra query, entonces deberas hacer posteriormente otro 'select' en query1 para que refleje los cambios de la base de datos. Debes tener, claro esta, la query en active := true. Deberias, tambien, usar un datamodule para agrupar todo.

Código Delphi [-]

dm.query_dbgrid.Connection := dm.conexion;
dm.datasource_dbgrid.dataset := dm.query_dbgrid;
...
dbnavigator.datasource :=  dm.datasource_dbgrid;
dbgrid.datasource := dm.datasource_dbgrid;
...
dm.query_insert.Connection := dm.conexion;
...
boton1.Click (insertar)
dm.query_insert ... (etc)

boton2.Click (ver, si no lo quieres hacer automaticamente)
dm.query_dbgrid.Active := false;
dm.query_dbgrid.SQL.Text := 'select ...';
dm.query_dbgrid.Active := true;
...

mas o menos

Última edición por coso fecha: 10-07-2008 a las 18:40:03.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
urgente ayuda con insert into vero_17jm SQL 4 28-11-2006 00:33:28
Ayuda con insert Teitek Conexión con bases de datos 3 28-10-2006 20:55:10
Insert me cierra otro Insert motrildelphi Conexión con bases de datos 0 05-05-2005 12:20:27
Urgente..Insert en tablas interbase para delphi....ayuda por favor Aser Firebird e Interbase 6 29-04-2005 02:55:57
ayuda novata: "Dataset not in Edit or Insert mode" maquicu Tablas planas 1 05-06-2004 09:40:27


La franja horaria es GMT +2. Ahora son las 21:36:32.


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
Copyright 1996-2007 Club Delphi