DELPHI盒子
!实时搜索: 盒子论坛 | 注册用户 | 修改信息 | 退出
检举帖 | 全文检索 | 关闭广告 | 捐赠
技术论坛
 用户名
 密  码
自动登陆(30天有效)
忘了密码
≡技术区≡
DELPHI技术
移动应用开发
Web应用开发
数据库专区
报表专区
网络通讯
开源项目
论坛精华贴
≡发布区≡
发布代码
发布控件
文档资料
经典工具
≡事务区≡
网站意见
盒子之家
招聘应聘
信息交换
论坛信息
最新加入: mulancc
今日帖子: 34
在线用户: 7
导航: 论坛 -> DELPHI技术 斑竹:liumazi,sephil  
作者:
男 iqwangzi (iqwangzi) ★☆☆☆☆ -
普通会员
2003/10/4 16:58:14
标题:
请教高人怎样在Delphi中直接用代码创建Access数据库...... 浏览:1553
加入我的收藏
楼主: 请问怎样在Delphi中直接用代码创建Access数据库,类似VB中的DAO编程,Delphi中可以使用"Microsoft DAO 3.5 Object Library"吗?非常感谢!
----------------------------------------------
-
作者:
男 bios (阿贡) ★☆☆☆☆ -
盒子中级会员
2003/10/4 22:11:05
1楼: uses comobj;

resourcestring
   adocs2= 'Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;' +
          'Data Source=%s;Mode=Share Deny None;Extended Properties="";' +
          'Jet OLEDB:System database="";Jet OLEDB:Registry Path="";' +
          'Jet OLEDB:Database Password="";Jet OLEDB:Engine Type=5;' +
          'Jet OLEDB:Database Locking Mode=1;Jet OLEDB:Global Partial Bulk Ops=2;' +
          'Jet OLEDB:Global Bulk Transaction_s=1;Jet OLEDB:New Database Password="";' +
          'Jet OLEDB:Create System Database=False;Jet OLEDB:Encrypt Database=False;' +
          'Jet OLEDB:Don't Copy Locale on Compact=False;' +
          'Jet OLEDB:Compact Without Replica Repair=False;Jet OLEDB:SFP=False';


procedure TSDIAppForm.CreateMDB(DBName: string); // 系统需要安装 MADAC
var
  CreateAccess: OleVariant;
begin
  CreateAccess := CreateOleObject('ADOX.Catalog');
  CreateAccess.Create('Provider=Microsoft.Jet.OLEDB.4.0;Data Source=' + DBName);
end;

procedure TSDIAppForm.DataModuleCreate(DBName:string);
var
 sdir,sfile :string;
 ssql:string;
begin
      if not FileExists(DBName) then
      begin//1
        try
          CreateMDB(DBName);
        except
          ShowMessage('数据库创建失败!');
          Exit;
        end;
        SplitPath(DBName,FenJiePath);
        sdir:=FenJiePath.pathxie ;

        sfile :=sdir+'Sys\alert';
        if FileExists(Sfile) then
          DeleteFile(Sfile);

        sfile :=sdir+'Sys\alertid';
        if FileExists(Sfile) then
          DeleteFile(Sfile);


        ADOTable1.Close ;
        ADOTable2.Close ;
        ADOTable3.Close ;
        ADOTable1.Connection :=nil;
        ADOTable2.Connection :=nil;
        ADOTable3.Connection :=nil;
        
        ADOConnection1.ConnectionString :=Format(adocs2,[DBName]);
        ADOQuery1.Connection :=ADOConnection1;

        ADOQuery1.SQL.Clear ;
        ADOQuery1.SQL.Assign(memo1.Lines );
        ADOQuery1.ExecSQL;

        ADOQuery1.SQL.Clear ;
        ADOQuery1.SQL.Assign(memo2.Lines );
        ADOQuery1.ExecSQL;

        ADOQuery1.SQL.Clear ;
        ADOQuery1.SQL.Assign(memo3.Lines );
        ADOQuery1.ExecSQL;

        ADOQuery1.Connection :=nil;
        ADOQuery1.Close ;

      end; file ://1
end;

----------------------------------------------
按此在新窗口浏览图片
按此在新窗口浏览图片
作者:
男 iqwangzi (iqwangzi) ★☆☆☆☆ -
普通会员
2003/10/5 15:14:51
2楼: 感谢兄台!
----------------------------------------------
-
作者:
男 namelysweet (就是甜) ★☆☆☆☆ -
盒子活跃会员
2003/10/5 18:19:05
3楼: http://www.delphi3000.com
有很多例子
----------------------------------------------
-
信息
登陆以后才能回复
Copyright © 2CCC.Com 盒子论坛 v2.1 版权所有 页面执行46.875毫秒 RSS