8、 使用新的數(shù)據(jù)瀏覽面板
VFP9增加了一個新的而且非常有用的數(shù)據(jù)瀏覽面板(如圖3),通過這個面板,你就可以來配置一些你常用的VFP數(shù)據(jù)庫、自由表以及SQL SEVER數(shù)據(jù)庫.你可以很容易的找到這一項,點擊[TOOLS]菜單里的[Task Pane],然后選擇[Data Explorer](也許你必須通過點擊">>"按鈕才能看到)。點擊[Add Connection]按鈕,然后指定數(shù)據(jù)源,完后就可以瀏覽了。右鍵點擊每個數(shù)據(jù)庫或表,在彈出菜單中包含一個[RUN QUERY]項,點擊這一項會出現(xiàn)查詢界面,這樣就可以進行數(shù)據(jù)查詢及瀏覽了。 圖表3說明:
數(shù)據(jù)瀏覽面板顯示了VFP的[Tastrade]數(shù)據(jù)庫的細節(jié)信息,同時右邊的查詢界面部分(通過右鍵點擊Northwind數(shù)據(jù)庫可以調(diào)出)則顯示了SQL SERVER數(shù)據(jù)庫Northwind的查詢結果。
9、 在事務處理中可以包含自由表和cursors
現(xiàn)在通過使用心得MAKETRANSACTABLE()函數(shù),你可以在一個具有完善回滾能力的事務處理中包含自有表和CURSOR,運行下列代碼,在每一個等待窗口后按回 鍵,注意事務處理在最后一步從cursor完全恢復期間的記錄插入。
如果已經(jīng)調(diào)用 MAKETRANSACTABLE()對表進行事務處理,那么使得這個表不被處理的唯一方法就是在所有的數(shù)據(jù)工作器中關閉并重新打開這個表,當在一個數(shù)據(jù)工作期中開始事務處理以后,這個表就會變得在所有的工作期中都可以進行處理,直到關閉。 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."