VFP 行转列 的有关问题

VFP 行转列 的问题
表1:
字段:计划号(主键)、日期、使用单位、采购员、建议采购

表2:
字段:计划号(可重复)、物资名称序号、物资名称、规格型号、单位、数量、物资备注

表3:
字段:计划号(可重复)、供货商序号、供货商、厂家或品牌、联系电话、供货期、厂家备注

表4:
字段:计划号(可重复)、物资名称序号、供货商序号、单价、总价


问题1:

这几个表设计是否合理,感觉有点繁琐。

问题2:

表4的内容是由表2,和表3 “相乘”得到的,由于想用grid 显示,牵扯到 行转列的问题。怎么样来实现。

PS:每个表都得存储.


------解决方案--------------------
问题1:
不知道你的具体情况,照我理解,一般情况下:
1、物资名称序号——(物资名称、规格型号、单位)之间
2、供货商序号——(供货商、厂家或品牌、联系电话)之间
应该是一一对应关系。

按照数据库设计理论,这种情况应该单独设置一个表来反应他们之间的对应关系,否则容易发生一致性问题:一旦发生变化,你要逐条记录修改。

但这样又增加了数据结构的复杂性。你要根据实际情况,例如数据量、变化的频率,自己权衡一下。

问题二
VFP里有个例程:VFPXTAB.PRG,在安装路径的根目录下,是专门用来做行列转换的,有详细的使用说明,拿起来就可以用,你打开来看一下吧。