使用自由表时,如果用命令模式建立一个多表联接查询的视图?
vfp6刚开始用,使用中有点疑惑,请教大家。
我计划实现一个简单的多表查询的功能,
新建了a,b,c三个自由表,使用left join 得到一张综合表。
因为无法在视图设计器里做一个多表的连接查询,所以只有使用create sql view 命令建立视图。
发现打开vfp后,直接在命令里运行create sql view "sql 代码" 时会提示sql中的操作表不存在。
而当我,浏览表并关闭之后,视图可以正确建立,我猜测是需要用use命令打开一遍吗?可试了下还是不成功。
综合以上情况,待解决的问题为:
使用自由表时,如果用命令模式建立一个多表联接查询的视图?
[解决办法]
VFP 远程视图使用面面观
http://www.ithome-cn.net/technology/fox/fox16.htm
[解决办法]
*先用USE打开所需表,并指定一个别名(注:通过Use打开的表,只调用一次即可;
如果在每一条Select中调用都会运行一个副本,且会冲突):
use 表1.dbf alias t_Table_1
use 表2.dbf alias t_Table_2
*假如 表1 与 表2 的关联字 段为 Name,将结果输出到游标 c_Table_Result :
select t_Table_1.*, t_Table_2.* from t_Table_1 left join t_Table_2 where allt(t_Table_1.Name) = allt(t_Table_2.Name) into cursor c_Table_Result
[解决办法]
3个自由表是在本地还是在远程, 如果在远程的话就不是自由表了
如果在本地的话就不能使用远程视图, 要建立本地视图
用 CREATE QUERY 建立 本地视图
先选择主表, 然后选择 其他表 每选一个表系统就询问和主表的连接方式和字段
选择完毕以后关闭表选择界面, 进行view 界面设计, 选择要输出的字段等
得到以下内容
SELECT Rk_xxzl.rk_date, Rk_xxzl.rkd_no, Gys_info.简称, Wuliaobm.fullname,;
Wuliaobm.zhizao_na;
FROM ;
rk_xxzl ;
INNER JOIN gys_info ;
ON Rk_xxzl.gys_no = Gys_info.编号 ;
INNER JOIN wuliaobm ;
ON Rk_xxzl.wuliao_no = Wuliaobm.wuliao_no
[解决办法]
我用的就是 VFP 6啊 ,一直在用最近才开始了解VFP9 上面的代码是我正在使用的 , 是否你的VFP6没装SP