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)
-   -   "Como Realizo instruciones SQL con ODBC y Access"!!! (https://www.clubdelphi.com/foros/showthread.php?t=56052)

danny 06-05-2008 14:16:37

"Como Realizo instruciones SQL con ODBC y Access"!!!
 
Buenas Amigos necesito ayuda ya que estoy incursionando en delphi y no tengo conocimiento en el manejo de base de datos estoy tratando de realizar una consulta SQL y cuando lo ejecuto y quiero saber si trajo resultados con RecordCount me da el siguiente error cannot perform this operation on a closed dataset (no puede realizar esta operación sobre dataset cerrado) estas son las lineas de codigo que utilizo
QConsultAcc.SQL.Clear;
QConsultAcc.SQL.Add('SELECT * FROM Usuarios;');
QConsultAcc.ExecSQL;
QConsultAcc.RecordCount;
y si me pueden ayudar con un tuorial o una explicacion de como inserto, elimino y consulto registros usando ODBC y Access Gracia por su ayuda.

vtdeleon 06-05-2008 14:51:47

Saludos

Cuando es una sentencia con "Select" debes invocar el metodo Open y no ExecSQL.

Sustituyelo! (QConsultAcc.ExecSQL por QConsultAcc.Open)

wds27 07-05-2008 02:06:43

Eso es cierto, la cuando usas la sentencia SELECT debes convocar al "Open" pero antes debes cerrar la Query, una alternativa seria:
QConsulta.close;
QConsulta.SQL.text:='SELECT * FROM TABLA';
QConsulta.Open;

Si quieres insertar registros debes usar la sentencia INSERT
QConsulta.SQL.Text:='INSERT INTO tabla(campo1,campo2,...,campon) VALUES ('''+dato1+''','''+dato2+''','''+...+''','''+daton+''')';
QConsulta.execSQL;
Los datos van entre comillas, se debe concatenar el texto.
Otra alternativa es colocar directamente la consulta en la propiedad SQL del objeto TADoQuery y usar parametros en las consultas, creo que eso resulta mas facil

danny 07-05-2008 14:49:42

Gracias amigo muy buena tu ayuda te lo agradezco espero contar con tu ayuda proximamente

danny 07-05-2008 14:50:47

Te agradezco tu ayuda gracias por aclarame la duda espero contar con ustedes en otras duda que tenga

danny 07-05-2008 14:52:09

Pana te estoy muy agradecido pude solucionar el problema


La franja horaria es GMT +2. Ahora son las 14:38:29.

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