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 18-05-2010
Jucho69 Jucho69 is offline
Miembro
 
Registrado: ene 2007
Ubicación: Ciudad Habana, Cuba
Posts: 118
Poder: 18
Jucho69 Va por buen camino
Mantenimiento a Access

Hola

A veces he tenido problemas con las bases de dato Access que se corrompen de vez en cuando, entonces tomé prestado un codigo de ustedes e hice está pequena aplicación que me resolvió el problema totalmente, espero que le sirva a alguien.

Saludos
Responder Con Cita
  #2  
Antiguo 18-05-2010
Avatar de delphi.com.ar
delphi.com.ar delphi.com.ar is offline
Federico Firenze
 
Registrado: may 2003
Ubicación: Buenos Aires, Argentina *
Posts: 5.932
Poder: 27
delphi.com.ar Va por buen camino
Si ibas a compartir algo de código, te cuento que te lo has olvidado!.

Saludos!
__________________
delphi.com.ar

Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla.
Responder Con Cita
  #3  
Antiguo 18-05-2010
Jucho69 Jucho69 is offline
Miembro
 
Registrado: ene 2007
Ubicación: Ciudad Habana, Cuba
Posts: 118
Poder: 18
Jucho69 Va por buen camino
Hola

Es que estaba tratando de subir un adjunto con todo en .zip pero exede la cuota, a ver de esta forma:

file:///C:/Documents%20and%20Setting...nimientoBD.exe

Aqui está el código.

Un Form, un Opendialog, tres Botones(yo usé Xbutton) y dos Edit
Código Delphi [-]
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, comobj, ExtCtrls, Mask, DBCtrls, dxCore, dxButton,
  jpeg;

type
  TForm1 = class(TForm)
    Bevel53: TBevel;
    Image9: TImage;
    Bevel62: TBevel;
    Bevel65: TBevel;
    Bevel64: TBevel;
    Bevel67: TBevel;
    Bevel68: TBevel;
    Bevel66: TBevel;
    Label1: TLabel;
    dxButton11: TdxButton;
    dxButton14: TdxButton;
    dxButton1: TdxButton;
    Bevel63: TBevel;
    Bevel59: TBevel;
    Edit1: TEdit;
    OpenDialog1: TOpenDialog;
    Bevel1: TBevel;
    Edit2: TEdit;
    Label2: TLabel;
    Bevel35: TBevel;
    procedure dxButton1Click(Sender: TObject);
    procedure dxButton14Click(Sender: TObject);
    procedure dxButton11Click(Sender: TObject);
    procedure OpenDialog1CanClose(Sender: TObject; var CanClose: Boolean);
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation


{$R *.dfm}

procedure TForm1.dxButton1Click(Sender: TObject);
var DBEngine : OLEVariant;
    BaseDeDatos, Contra:string;
Begin
 BaseDeDatos:=Edit1.Text;
 Contra:=Edit2.Text;
  try
    DeleteFile(BaseDeDatos + '2');
    DbEngine := CreateOleObject('Dao.DbEngine.35');
    DbEngine.CompactDataBase(BaseDeDatos, BaseDeDatos + '2', NULL, 0, ';pwd='+Contra);
    DeleteFile(BaseDeDatos);
    RenameFile(BaseDeDatos + '2', BaseDeDatos);
  except
    try
      DeleteFile(BaseDeDatos + '2');
      DbEngine := CreateOleObject('Dao.DbEngine.36');
      DbEngine.CompactDataBase(BaseDeDatos, BaseDeDatos + '2', NULL, 0, ';pwd='+Contra);
      DeleteFile(BaseDeDatos);
      RenameFile(BaseDeDatos + '2', BaseDeDatos);
    except
      try
        DeleteFile(BaseDeDatos + '2');
        DbEngine := CreateOleObject('Dao.DbEngine.120');
        DbEngine.CompactDataBase(BaseDeDatos, BaseDeDatos + '2', NULL, 0, ';pwd='+Contra);
        DeleteFile(BaseDeDatos);
        RenameFile(BaseDeDatos + '2', BaseDeDatos);
      finally
     end;
    end
   end;
  dxButton1.Enabled:=false;
 end;
procedure TForm1.dxButton14Click(Sender: TObject);
 begin
  Form1.Close;
 end;
procedure TForm1.dxButton11Click(Sender: TObject);
 begin
  OpenDialog1.Execute;
 end;
procedure TForm1.OpenDialog1CanClose(Sender: TObject; var CanClose: Boolean);
 begin
  Edit1.Text:=(OpenDialog1.FileName);
  dxButton1.Enabled:=true;
 end;
procedure TForm1.FormCreate(Sender: TObject);
 var hMenuHandle : HMENU;  Sem:THandle;
   begin
    hMenuHandle := GetSystemMenu(Form1.Handle, FALSE);
    if (hMenuHandle <> 0) then
    DeleteMenu(hMenuHandle, SC_CLOSE, MF_BYCOMMAND);
   Sem := CreateSemaphore(nil,0,1,'MantenimientoBD.exe');
   if ((Sem <> 0) and (GetLastError = ERROR_ALREADY_EXISTS)) then
    begin
     CloseHandle( Sem );
     ShowMessage('Este programa ya se está ejecutando...');
     Halt;
    end;
  end;
end.

Última edición por marcoszorrilla fecha: 19-05-2010 a las 15:00:01.
Responder Con Cita
  #4  
Antiguo 18-05-2010
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.293
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Lo más sencillo en estos casos es que lo subas a un servidor público tipo Megaupload o rapidshare y luego coloques aquí el link. Incluso puedes usar el FTP del club.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #5  
Antiguo 18-05-2010
Jucho69 Jucho69 is offline
Miembro
 
Registrado: ene 2007
Ubicación: Ciudad Habana, Cuba
Posts: 118
Poder: 18
Jucho69 Va por buen camino
Hola Neftali

Sí, esmás facil, lo puse en

http://rapidshare.com/files/38882940...ntoBD.zip.html

Saludos
Responder Con Cita
  #6  
Antiguo 19-05-2010
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.293
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Hola.
Te lo he subido al FTP en la sección Delphi y he eliminado un par de copias que habías subido a otros directorios.

Gracias por compartir el código.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
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
Software Mantenimiento Preventivo en Delphi maximo_nashir Lazarus, FreePascal, Kylix, etc. 5 14-06-2008 00:55:01
Cuanto cobrar por mantenimiento del sistema? nfrfabian Varios 4 10-11-2007 00:12:15
Mantenimiento De Registro RDELROSARIOM Conexión con bases de datos 1 22-04-2005 23:15:34
Curso de mantenimiento del sistema para principiantes. marcoszorrilla Humor 0 16-11-2003 09:41:10


La franja horaria es GMT +2. Ahora son las 13:11:52.


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