200分 如何编写代码动态建立access数据库和库中的表,还有删除其中的表。如果给事例代码,我愿意奉上200分 (100分)

  • 主题发起人 主题发起人 mt
  • 开始时间 开始时间
M

mt

Unregistered / Unconfirmed
GUEST, unregistred user!
如何在access数据库中建立和删除一个表,
最好可以同时建立一个数据库(要在代码中动态建立)另外如果连接带密码的access
 
根据条件设报表的memo的visible属性
 
对不起,我是一个报表初学者,请说详细些,最好有事例代码?谢谢[:(]
 
可以使用FASTREPORT控件试一试,baidx@inhe.net
 
我想用代码实现,空件最好是delphi基本空件,谢谢!
 
请说的详细些,如何用excel
 
用FASTREPORT或用DBGridEh,再或者动态生成数据库
 
如何动态生成数据库,需要是access的创建与删除
 
是这个样子的。如果你得到的字段有范围限制,比如10个,那么采用FASTREPORT组件,
把抬头的MEMO横着放10个,然后VISIBLE为假。根据你查询集的字段数目,动态决定是哪个MEMO显示,
原理就是这样。至于说代码,你先找到FR组件,里面很详细的例子。一看就明白。
我要是直接把代码给你,估计也也不会仔细去钻研了。
 
谢谢您的回答,但是我的字段经常增加或减少!
 
用Ehlib也不错
直接打印Grid中的内容 里面的列(字段)可Hide
Delphi园地
http://mydelphi.8u8.com
 
创建access数据库
use db,dbtables,comobj;

var
CreateAccess:OleVariant;
begin
CreateAccess:=CreateOleObject('ADOX.Catalog');
CreateAccess.Create('Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:/Aceco.mdb');

end;
 
可以利用ADOX对象!
开发平台或客户端需要安装MDAC 2.1数据库引擎,你可以从微软公司http://www.microsoft.com/data下载,也可以在安装IE5.0中选择定制安装“动态数据绑定”选项。
  在Delphi IDE中选择菜单Project/Import Type Library,出现Import Type Library对话框,选择“Microsoft ADO Ext. 2.x for DDL and Security”,
将Class Name中TTable改为TADOXTable(因为TTable组件在Delphi中已经存在并注册);选择“Microsof Jet and Replication Object 2.x Library”。
然后单击“Install”安装,便在Delphi的Imports目录下生成ADOX_TLB.pas和JRO_TLB.pas两个文件。在Unit文件的Uses中加入ComObj、ADOX_TLB、JRO_TLB,
就可以通过COM操作ADOX和JRO对象了。
  打开ADOX_TLB.Pas文件,可以看到定义的接口有_Catalog、_Table、_Index等。

使用ADOX和JRO的例子。
  建立一个工程项目,在Form1Uses中加入ComObj、ADOX_TLB、JRO_TLB,添加三个按钮:btnCreateDB和btnCompactDB,用于实现创建数据库、创建数据表和压缩数据库功能。
  1.创建数据库、数据表和索引。
  procedure TForm1.btnCreateDBClick(Sender:TObject);
  var
  Catalog:_Catalog;//定义为_Catalog的接口类型
  Table:_Table;
  Index:_Index;
  strCon:string;//定义连接字符串
  begin
  Catalog:=CreateComObject(Class-Catalog) as _Catalog;
  //建立Catalog实例,也可以用 Catalog:=CoCatalog.Create;
  strCon:='Provider=Microsoft.Jet.OleDB.4.0;'
  //通过Jet OleDb直接操作Access数据库
  +'Data Source=d:/ComTest/myDb.mdb;'
  //数据库位置
  +'Jet OLEDB:Engine Type=5;'
  //Jet 4.x格式,如为4,则Jet 3.x格式
  +'Locale Identifier=0x0804;'
   //支持简体中文(一定要有)
  +'Jet OLEDB:Database Password=mypwd';
  //加入密码
  Catalog.Create(strCon); //建立数据库
  {建立数据表和索引}
  catalog._Set_ActiveConnection(strCon);
  //连接到数据库
  with Catalog do
  begin //建立数据表
  Table:=Create Com Object(Class-Table) as _Table; //建立Table实例
  with Table do
  begin
  Name:='Tel';
  Columns.Append('Name',adVarWChar,8);
  //数据类型详见MDAC SDK
  Columns.Append('Phone',adVarWchar,20);
  Index:=CreateComObject(Class_Index) as _Index; //建立索引
  with Index do
  begin
  Name:='MyIndex';
  Columns.Append('Name',adVarWchar,8);
  end;
  Indexes.Append(Index,EmptyParam);
  end;
  Tables.Append(Table);
  end;
  end;
 
创建和删除数据表可以用SQL语句来完成,至于动态创建一个数据库还需进一步研究。
1、创建数据表
create table 数据表名称 (
字段名称 字段类型,
字段名称 字段类型,
字段名称 字段类型
)

2、删除数据表

drop table 数据表名称

 
http://www.delphibbs.com/delphibbs/dispq.asp?lid=1337087
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
后退
顶部