8、 使用新的数据浏览面板
VFP9增加了一个新的而且非常有用的数据浏览面板(如图3),通过这个面板,你就可以来配置一些你常用的VFP数据库、自由表以及SQL SEVER数据库.你可以很容易的找到这一项,点击[TOOLS]菜单里的[Task Pane],然后选择[Data Explorer](也许你必须通过点击">>"按钮才能看到)。点击[Add Connection]按钮,然后指定数据源,完后就可以浏览了。右键点击每个数据库或表,在弹出菜单中包含一个[RUN QUERY]项,点击这一项会出现查询界面,这样就可以进行数据查询及浏览了。 图表3说明:
数据浏览面板显示了VFP的[Tastrade]数据库的细节信息,同时右边的查询界面部分(通过右键点击Northwind数据库可以调出)则显示了SQL SERVER数据库Northwind的查询结果。
9、 在事务处理中可以包含自由表和cursors
现在通过使用心得MAKETRANSACTABLE()函数,你可以在一个具有完善回滚能力的事务处理中包含自有表和CURSOR,运行下列代码,在每一个等待窗口后按回 键,注意事务处理在最后一步从cursor完全恢复期间的记录插入。
如果已经调用 MAKETRANSACTABLE()对表进行事务处理,那么使得这个表不被处理的唯一方法就是在所有的数据工作器中关闭并重新打开这个表,当在一个数据工作期中开始事务处理以后,这个表就会变得在所有的工作期中都可以进行处理,直到关闭。 CREATE CURSOR MyCursor (id i, name c(20))
WAIT WINDOW "Table is "+ ;
IIF(ISTRANS (),[],[not ])+"transactable. " +;
TRANSFORM(RECCOUNT())+" records."
MAKETRANSACTABLE()
BEGIN TRANSACTION
INSERT INTO MyCursor valueS (1, "Fox")
WAIT WINDOW "Table is "+ ;
IIF(ISTRANS (),[],[not ])+"transactable. " +;
TRANSFORM(RECCOUNT())+" records."
ROLLBACK
WAIT WINDOW "Table is "+ ;
IIF(ISTRANS (),[],[not ])+"transactable. " +;
TRANSFORM(RECCOUNT())+" records."