初级问题(50分)

  • 主题发起人 主题发起人 zjw
  • 开始时间 开始时间
Z

zjw

Unregistered / Unconfirmed
GUEST, unregistred user!
1.设定 主/明细数据库不能使用PARADOX吗?
2.如果可以,索引如何设定特别是明细表的索引?
 
1.当然可以
2.明细表要有一个和主表索引相同的字段,把它设定为索引即可;

主表:
DataModule1.Table1.DatabaseName:='别名';
DataModule1.Table1.TableName:='主表.db';
DataModule1.Table1.IndexName:='NBR';
DataModule1.DataSource1.DataSet:=DataModule1.Table1;

明细表:
DataModule1.Table2.DatabaseName:='别名';
DataModule1.Table2.TableName:='明细.db';
DataModule1.Table2.IndexName:='NBR';
DataModule1.Table2.MasterFields:='NBR';
DataModule1.Table2.MasterSource:=DataModule1.DataSource1;
DataModule1.DataSource2.DataSet:=DataModule1.Table2;
 
如您所说那明细所添加的索引为第一索引还是第二索引,如果在未建立KEY的情况下
建立第二索引,在插入数据时系统会报‘Index only read’。而如果设立了KEY
那明细与主表间如何发生一对多关系呢?
 
建议看一下 delphi/demos/db/mastapp
 
一对多,可以在设立KEY下再建立相应字段索引,在主明细表对应时就对应该索引
 
可是在我的明细表中无一字段符合KEY要求,如果人为添加一自动添加字段为KEY那
对数据维护就有一定的要求,比如用户删除了其中一些记录等等。经我摸索发现如果
主表为PARDOX明细为dbf好象什么都解决了,但总觉得此法非正式有人用过吗?稳定
性如何?而且Delphi对VFP6.0格式的DBF不认?
 
没有人理我了吗?
斑竹怎么办?我的问题好象被自己解决了。
 
主表中可以随便设一个key,主要是为了排序,在次表中要有一个field与主表相同,在次表中建立secondindex,并用这个field为索引field,则,主表选不同内容,次表内容随着改变,是不是这个意思?
 
feagle
正是此意!但您的解决方案?
 
解决方法我不是也说了吗?例:第一个名name1,field:No,Name,表二:name2,field:People,Name,则:name1中用No为key,在name2中,建立
secondindex,选取Name为索引field,在table2(与datesource2,即:
name2相连),设置mastersource masterfield,and indexname即可!
祝你成功!
给我多少?
 
可是您的方案还是需建立一个“垃圾字段”:NO,这样好象有“死拉硬撑”之嫌。
总体感觉不如我的方案。

一个似乎让人讨厌而喋喋不休的守财奴敬上
 
多人接受答案了。
 
后退
顶部