注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

鑫淼梦园的博客

圆你的梦想 从这里开始

 
 
 

日志

 
 

怎样用delphi动态创建access数据库及表啊?  

2013-05-07 02:37:52|  分类: delphi xe3 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
建库:
  //创建ACCESS2000数据库
  function CreateAssess2000Database(const DatabaseName : string) : Boolean;
  var
    Cat:OleVariant;
  begin
    Cat:=CreateOleObject('ADOX.Catalog');
    Cat.Create('Provider=Microsoft.Jet.OLEDB.4.0;Data Source=' + DatabaseName);
  end;
建表就不用问了?


  代码:const
  SConnectionString = 'Provider=Microsoft.Jet.OLEDB.4.0;Data Source=%s;'
    + 'Jet OLEDB:Database Password=%s;';
implementation
{$R *.dfm}
//=============================================================================
// Procedure: GetTempPathFileName
// Author   : ysai
// Date     : 2003-01-27
// Arguments: (None)
// Result   : string
//=============================================================================
function GetTempPathFileName(): string;
//取得临时文件名
var
  SPath, SFile: array[0..254] of char;
begin
  GetTempPath(254, SPath);
  GetTempFileName(SPath, '~SM', 0, SFile);
  result := SFile;
  DeleteFile(result);
end;
//=============================================================================
// Procedure: CreateAccessFile
// Author   : ysai
// Date     : 2003-01-27
// Arguments: FileName:String;PassWord:string=''
// Result   : boolean
//=============================================================================
function CreateAccessFile(FileName: string; PassWord: string = ''): boolean;
//建立Access文件,如果文件存在则失败
var
  STempFileName: string;
  vCatalog: OleVariant;
begin
  STempFileName := GetTempPathFileName;
  try
    vCatalog := CreateOleObject('ADOX.Catalog');
    vCatalog.Create(format(SConnectionString, [STempFileName, PassWord]));
    result := CopyFile(PChar(STempFileName), PChar(FileName), True);
    DeleteFile(STempFileName);
  except
    result := false;
  end;
end;
//=============================================================================
// Procedure: CompactDatabase
// Author   : ysai
// Date     : 2003-01-27
// Arguments: AFileName,APassWord:string
// Result   : boolean
//=============================================================================
function CompactDatabase(AFileName, APassWord: string): boolean;
//压缩与修复数据库,覆盖源文件
var
  STempFileName: string;
  vJE: OleVariant;
begin
  STempFileName := GetTempPathFileName;
  try
    vJE := CreateOleObject('JRO.JetEngine');
    vJE.CompactDatabase(format(SConnectionString, [AFileName, APassWord]),
      format(SConnectionString, [STempFileName, APassWord]));
    result := CopyFile(PChar(STempFileName), PChar(AFileName), false);
    DeleteFile(STempFileName);
  except
    result := false;
  end;
end;

  评论这张
 
阅读(330)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017