Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 25-04-2013
feliz-58 feliz-58 is offline
Miembro
 
Registrado: sep 2012
Posts: 314
Poder: 12
feliz-58 Va por buen camino
Question ¿Como eliminar Una Tabla en una Base de datos De Access?

Como puedo eliminar una tabla con una base de datos en MS Access, y que seleccione la tabla a borrar por un Combobox?

Los componentes son ADOtable y ADOconection.

Gracias









Saludos
Responder Con Cita
  #2  
Antiguo 25-04-2013
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola feliz-58.

Código Delphi [-]
procedure TForm1.DeleteTable(const TableName: string);
const
   MSG = '¡Atención! se borrará la tabla %s ¿ Continua ?';
begin
  if MessageBox(Handle, PChar(Format(MSG,[TableName])), '', MB_ICONWARNING+MB_YESNO) = IDYES then
    with ADOQuery1 do
    begin
      Close;
      SQL.Text := 'DROP TABLE ' + TableName;
      ExecSQL;
    end;
end;

Llamada ejemplo:
Código Delphi [-]
  if ComboBox1.ItemIndex > -1 then
    DeleteTable(ComboBox1.Items[ComboBox1.ItemIndex]);

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #3  
Antiguo 25-04-2013
feliz-58 feliz-58 is offline
Miembro
 
Registrado: sep 2012
Posts: 314
Poder: 12
feliz-58 Va por buen camino
Cita:
Empezado por ecfisa Ver Mensaje
Hola feliz-58.

Código Delphi [-]
procedure TForm1.DeleteTable(const TableName: string);
const
   MSG = '¡Atención! se borrará la tabla %s ¿ Continua ?';
begin
  if MessageBox(Handle, PChar(Format(MSG,[TableName])), '', MB_ICONWARNING+MB_YESNO) = IDYES then
    with ADOQuery1 do
    begin
      Close;
      SQL.Text := 'DROP TABLE ' + TableName;
      ExecSQL;
    end;
end;

Llamada ejemplo:
Código Delphi [-]
  if ComboBox1.ItemIndex > -1 then
    DeleteTable(ComboBox1.Items[ComboBox1.ItemIndex]);

Saludos.
Donde voy a Poner el Codigo base?
Responder Con Cita
  #4  
Antiguo 25-04-2013
feliz-58 feliz-58 is offline
Miembro
 
Registrado: sep 2012
Posts: 314
Poder: 12
feliz-58 Va por buen camino
¿Como eliminar Una Tabla en una Base de datos De Access Desde Delphi Con un Combobox?

Como puedo eliminar una tabla con una base de datos en MS Access, y que seleccione la tabla a borrar por un Combobox?

Los componentes son ADOtable y ADOconection.

Gracias
Responder Con Cita
  #5  
Antiguo 25-04-2013
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Cita:
Empezado por feliz-58 Ver Mensaje
Donde voy a Poner el Codigo base?
Hola.

Si usas un TDataModule, sería un buen lugar para ubicarlo:
Código Delphi [-]
...
implementation

uses Windows, Forms;

procedure TtuDataModule.DeleteTable(const TableName: string);
const
   MSG = '¡Atención! se borrará la tabla %s ¿ Continua ?';
begin
  iif MessageBox(Screen.ActiveForm.Handle, PChar(Format(MSG,[TableName])), '',
                 MB_ICONWARNING+MB_YESNO) = IDYES then
    with ADOQuery1 do
    begin
      Close;
      SQL.Text := 'DROP TABLE ' + TableName;
      ExecSQL;
    end;
end;

Llamada desde un form:
Código Delphi [-]
...
implementation

uses uDataModule; // tuDataModule

procedure TForm1.btnBorraClick(Sender: TObject);
begin
  if ComboBox1.ItemIndex > -1 then
    tuDataModule.DeleteTable(ComboBox1.Items[ComboBox1.ItemIndex]);
end;

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....

Última edición por ecfisa fecha: 25-04-2013 a las 18:01:52. Razón: identar
Responder Con Cita
  #6  
Antiguo 25-04-2013
Avatar de ElDioni
[ElDioni] ElDioni is offline
Miembro Premium
 
Registrado: jul 2005
Ubicación: Murcia (España)
Posts: 935
Poder: 19
ElDioni Va por buen camino
Buenas.

tienes la respuesta en un hilo que has abierto con la misma pregunta.

http://www.clubdelphi.com/foros/showthread.php?t=82932
__________________
Confórmate con lo que tienes pero anhela lo que te falta.
Responder Con Cita
  #7  
Antiguo 25-04-2013
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola feliz-58

Supongo que ha sido una confusión, pero te ruego que no publiques la misma consulta en diferentes hilos. (combiné ambos en este)

Saludos y gracias por tu colaboración
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #8  
Antiguo 25-04-2013
feliz-58 feliz-58 is offline
Miembro
 
Registrado: sep 2012
Posts: 314
Poder: 12
feliz-58 Va por buen camino
Cita:
Empezado por ecfisa Ver Mensaje
Hola feliz-58

Supongo que ha sido una confusión, pero te ruego que no publiques la misma consulta en diferentes hilos. (combiné ambos en este)

Saludos y gracias por tu colaboración
Lo siento, pero no tengo idea de lo que me disjiste que haga XD no tengo experiencia con los Modulos de datos :/ me explicas como?
Responder Con Cita
  #9  
Antiguo 25-04-2013
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Cita:
Empezado por feliz-58 Ver Mensaje
Lo siento, pero no tengo idea de lo que me disjiste que haga XD no tengo experiencia con los Modulos de datos :/ me explicas como?
Hola.

Te adjunto un pequeño demo basado en dbdemos.mdb. Para usarlo con tu base de datos, deberás modificar la propiedad ConnectionString del TADOConnection por la ruta donde se halle.

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....

Última edición por ecfisa fecha: 25-09-2014 a las 03:03:59.
Responder Con Cita
  #10  
Antiguo 25-04-2013
feliz-58 feliz-58 is offline
Miembro
 
Registrado: sep 2012
Posts: 314
Poder: 12
feliz-58 Va por buen camino
Cita:
Empezado por ecfisa Ver Mensaje
Hola.

Te adjunto un pequeño demo basado en dbdemos.mdb. Para usarlo con tu base de datos, deberás modificar la propiedad ConnectionString del TADOConnection por la ruta donde se halle.

Saludos.
el query tiene algun codigo? porque me sale en blanco en la propiedad SQL?
Responder Con Cita
  #11  
Antiguo 25-04-2013
feliz-58 feliz-58 is offline
Miembro
 
Registrado: sep 2012
Posts: 314
Poder: 12
feliz-58 Va por buen camino
Cita:
Empezado por ecfisa Ver Mensaje
Hola.

Te adjunto un pequeño demo basado en dbdemos.mdb. Para usarlo con tu base de datos, deberás modificar la propiedad ConnectionString del TADOConnection por la ruta donde se halle.

Saludos.
el query tiene algun codigo? porque me sale en blanco en la propiedad SQL?

o sera otra cosa porque me sale un error, miralo:
Responder Con Cita
  #12  
Antiguo 25-04-2013
feliz-58 feliz-58 is offline
Miembro
 
Registrado: sep 2012
Posts: 314
Poder: 12
feliz-58 Va por buen camino
aqui estan los dos errores
Imágenes Adjuntas
Tipo de Archivo: jpg errores.jpg (39,6 KB, 3 visitas)
Responder Con Cita
  #13  
Antiguo 25-04-2013
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Cita:
Empezado por feliz-58 Ver Mensaje
el query tiene algun codigo? porque me sale en blanco en la propiedad SQL?

o sera otra cosa porque me sale un error, miralo:
Hola.

No, el query no tiene código SQL en diseño, sólo en que se le asigna en el procedimiento. Acabo de probarlo y funciona perfectamente, no me explico ese error que te está dando.

Aunque por las dudas y por el tipo de error, revisa que en: Project -> Options -> Forms -> Auto-create forms, el DataModule esté situado en primer término.

Es decir que si haces: Project -> View source, tendrías que ver algo parecido a:
Código Delphi [-]
program Project2;

uses
  Forms,
  Unit1 in 'Unit1.pas' {Form1},
  Unit2 in 'Unit2.pas' {DataModule2: TDataModule};

{$R *.res}

begin
  Application.Initialize;
  Application.CreateForm(TDataModule2, DataModule2); // Primero el DataModule
  Application.CreateForm(TForm1, Form1);
  Application.Run;
end.
(Aunque no comprendo como podría haberse cambiado el órden ya que en el adjunto figura el correcto...)

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....

Última edición por ecfisa fecha: 25-04-2013 a las 19:48:51.
Responder Con Cita
  #14  
Antiguo 25-04-2013
feliz-58 feliz-58 is offline
Miembro
 
Registrado: sep 2012
Posts: 314
Poder: 12
feliz-58 Va por buen camino
Cita:
Empezado por ecfisa Ver Mensaje
Hola.

No, el query no tiene código SQL en diseño, sólo en que se le asigna en el procedimiento. Acabo de probarlo y funciona perfectamente, no me explico el error.

Aunque por las dudas y por el tipo de error, revisa que en: Project -> Options -> Forms -> Auto-create forms, el DataModule esté situado en primer término.

Es decir que si haces: Project -> View source, tendrías que ver algo parecido a:
Código Delphi [-]
program Project2;

uses
  Forms,
  Unit1 in 'Unit1.pas' {Form1},
  Unit2 in 'Unit2.pas' {DataModule2: TDataModule};

{$R *.res}

begin
  Application.Initialize;
  Application.CreateForm(TDataModule2, DataModule2); // Primero el DataModule
  Application.CreateForm(TForm1, Form1);
  Application.Run;
end.
(Aunque no comprendo como podría haberse cambiado el órden ya que en el adjunto figura el correcto...)

Saludos.
Excelente Eres un Genio lo resolvi, cambie el orden y lo puse de primero incluso hasta que el de inicio de sesion Muchisisimas Gracias
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
Duplicar una tabla con otro nombre dentro de una base de datos de access desde delphi feliz-58 Varios 13 26-04-2013 20:49:32
Como Crear una base de datos access? Gagiel Conexión con bases de datos 11 27-02-2007 12:17:43
Problemas al conectar una tabla ADO a una base de datos de Access que posee contraseñ Roger_Fernandez Conexión con bases de datos 5 28-02-2005 16:46:29
Como eliminar la solicitud de password de una base de datos MRSAM Conexión con bases de datos 0 07-01-2005 16:34:11
como desbloque una base de datos en access? danytorres Varios 4 15-06-2004 16:06:42


La franja horaria es GMT +2. Ahora son las 12:19:36.


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