|
Usuários |
|
46 Usuários Online
|
|
[Artigos]
Função para Compactar Banco em ACCESS |
Publicado por henriquesurf : Terça, Dezembro 21, 2004 - 12:15 GMT-3 (4560 leituras)
1 Comentário Enviar para um amigo Versão para impressão
|
Com relação as funções do ACCESS eu ja vi a função que repara o banco de dados também, mas na minha DLL apenas usei a função de compactação, depois eu crio ela com a reparação junto... o ACCESS 97 tem a função separada , de compactar e de reparar, já no 2000 tem a função junto, apenas a diferença é que quando você compactar no 2000 ele já repara, no 97 não, terá que fazer os 2 processos separdos.
agora se você nao souber usar DLL vou lhe dar um EXEMPLO,
declare os uses assim :
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,ComObj,ADODB,
Db;
apos o END; da declaração PUBLIC coloque :
function compactaMDB(Pathdb : string; senha : string; tipo : integer) : boolean; stdcall;
a declaração STDCALL é para que a função possa ser chamado de qualquer lugar, ou qualquer linguagem, se voce usar C++, VB e chamar essa DLL passando os valores corretos ela funciona.
agora apos a declaração IMPLEMENTATION você coloca assim :
function compactaMDB(Pathdb : string; senha : string; tipo : integer) : boolean; external 'compacta';
vou explicar a linha acima porque é mais "chatinha", então declaramos a função com os parâmetros dela, e ela retorna TRUE caso conseguiu compactar e FALSE caso não conseguiu, a declaração EXTERNAL você coloca o nome da DLL, que no casa chama compacta, sem a extensão .dll.
Vamos a um exemplo prático.
crie um VAR do tipo BOOLEAN
na passagem de parametros para a função, em 'local_do_banco' passe por exemplo assim 'c:\banco.mdb'
em 'senha_caso_exista' passe a senha 'assim' ou '' se não existir
em tipo coloque 4 se for access 97 ou 5 se for access 2000.
var
resultado : boolean;
begin
resultado := compactaMDB('local_do_banco', 'senha_caso_exista', 'o_tipo');
if resultado = true then
showmessage('Parabens compactacao efetuada com sucesso')
else
showmessage('A compactação nao obteve resultados, verifique os valores informados');
end;
Peguem a DLL aqui baixar
|
|
Comentários | |
| | Comentários pertencem aos seus respectivos autores. Não somos responsáveis pelo seus conteúdos. |
|
|
Edição 112 |
|
|
50 Programas Fontes |
|
|
Produtos |
|
|