如何安裝visual Foxpro 9.0
運行Setup.exe之后,應該有三大項可以選擇,先安裝第一大項,可能有1-3個必要的環境支持的軟件,裝好之后返回,安裝第二大項,也就是VisualFoxPro了,一直“下一步”就可以,裝好之后返回,第三大項是補丁的,你可以用它直接連接到微軟的網站進行更新,也可以手工到網上下載補丁來安裝上去,現在最新是SP2,微軟或者梅子論壇( http://www.meizvfp.com/bbs )都有,而且梅子論壇上面有SP2的漢化補丁。或者你可以到 http://www.sibill.cn 去下載“VisualFoxPro 9.0 SP2 綠色漢化精簡版”,里面帶有最新的漢化版幫助文件,直接解壓縮出來就可以使用。
FOXPRO 9.0什么意思!解釋解釋!
強大的家族
為了理解FoxPro遺留的能量,了解它的發展史是有幫助的。在八十年代中期,噴氣發動機實驗室(JPL)跟其它政府機構一樣,也使用微型
和個人計算機。這些獨立的機器使工程師有時不用操作大型機就能處理大量的數據集合,同時還把簡單的類似英語的命令(他們可以在DOS下執
行這些命令)組合到程序中了。這些程序變成了應用程序,并且一種新類型的應用程序開發人員誕生了。那時經常使用電子數據表和靜態數據
包,但是它們都比較麻煩,并且容易造成數據丟失。
數據庫是處理大量數據的邏輯解決方案,因此Wayne Ratliff編寫了一個自己帶有數據庫的程序,并且同時添加了一組可以在數據上執行的
命令。“Vulcan”帶有一個交互式的點提示符,使用易于記住的慣用語,允許工程師使用一組簡短的命令操作自己的數據——就像操作物理數
據集合一樣。這個程序最終成為Ashton-Tate的dBa數據庫程序。
“dBa與BASIC、C、FORTRAN和COBOL程序是不同的,在dBa程序中很多麻煩的工作已經被做好了。數據維護是由dBASE而不是由用戶完成
的,因此用戶可以把精力集中在自己的事務上,而不必與處理打開、讀取和關閉文件、管理空間分配這些麻煩的工作絞在一起。”——Wayne
Ratliff
在它發布后的幾年之內,大量的dBa克隆產品沖擊了市場。FoxBa由于引人注目的高速度和穩定性獲得了很大的名氣。此外,Fox小組很
敏捷,對用戶團體作出的響應更多。通過定期的修補,通過CompuServe和重要版本的及時支持,作為對用戶請求的回應,它在非常接近原始版
本的同時,通過添加提高生產率的工具變得更快了。
FoxPro發布的時候,它為DOS程序員提供了窗口界面。Fox小組已經提供了跨平臺的編譯器,允許開發者在Unix或DOS上,以及在后來的
Windows版本和Mac上部署應用程序。接著出現了FoxPro 2,它帶來了“Rushmore”(FoxPro著名的數據性能增強部分)技術、在線的SQL命令、
圖形屏幕和報表編寫器。
Visual FoxPro
Visual FoxPro(它現在屬于微軟)帶來了OOP(面向對象編程)、完全的關系數據存儲和遠程數據訪問。因此,到1995年時,FoxPro開發
者可以自然地使用SQL、使用面向對象編程、編寫多層結構的、跨平臺的應用程序——而且同時還可以兼容dBa II編寫的遺留代碼。
對于FoxPro開發者來說,Fox已經完全成為一種安全的應用程序開發途徑;你對于這種技術的投資不會受到廠商變革的影響。不幸的是,市場中
的其它產品或同一個廠商的不同產品卻不再是這樣的。這導致了目前的對FoxPro和它在開發者世界中的地位的誤解。
VFP將不會成為一種.NET語言。這種可能性在開發VFP 7時就被慎重地考慮過,但是這種改變可能會導致一些嚴重的結果,最好的后果是不
能保持向后兼容,最糟的后果是丟掉它強大的數據維護能力。.NET框架組件和VFP廣泛的語言和類之間多余的區域會帶來更多的混淆,很可能導
致該產品更早地死亡。
由于Visual FoxPro將不會運行受控代碼,對微軟來說它就沒有戰略意義了,這可以理解。但是,它是一個成熟的開發平臺。你編寫、部署
和維護多層的、高可用性的、桌面的、互聯網的、COM和Web服務的開發所需要的一切都已經由Visual FoxPro或第三方廠商提供了。它包含了牢
固的面向對象語言和完全的關系化、速度很快的數據庫(支持2G或十億條記錄以下的表)和獨立的OLEDB數據提供程序。甚至連IDE也有完全的
可擴充的設計表面,擁有內建在語言(和已發布資源)中的工具和向導等重要部分。它與SQL Server嚴格地兼容,擁有良好的COM交互操作能力
——包括Office自動化、強大的XML處理和功能,以及與20年前編寫的代碼的兼容性。
目前VFP適合于哪些場合?
它仍然是希望完成事務的專業人員的選擇。
它特別適合那些主要工作不是編寫代碼的工作人員。
下面是Lt.John Harver的話:
“我的日常職務是真北(TN)Memphis的Shelby州州長辦公室副職人員,是信息系統指揮官。我已經部署了我們機構(例如Memphis警察
局)、所有地方法律執行機構和大多數聯邦機構(例如FBI、ATF Marshals和Secret Service)正在使用的系統。我的最近一個‘大項目’是為
逃往局(Fugitive Bureau)開發的基于膝上型電腦系統,在系統中辦公人員通過無線調制解調器和WiFi訪問數據。他們能夠讀取嫌疑犯照片、
逮捕記錄等等,還可以用信息打印逮捕傳票。該系統的中間件是Webconnection(一款VFP Web產品),我們從VFP、SQL Server和天騰大型機中
獲取數據”。
我問他是否能夠使用.NET完成上述的全部事務。他的回答是“我只有三個.NET開發人員,而且經常有其它的事情”。
這并不是因為這個應用程序適合于在Fox中運行而不適合在.NET中運行。這是因為一個州長辦公室人員能夠交互式地使用一個工具,自動化
工作,把他的程序遷移到一個應用程序中,擴展應用程序與其它的系統集成,并最終建立一套價值無法估計的工具。
它仍然是那些對已有代碼做了很大投入的開發者的選擇。
Chris Jeffries是人力資源微型系統公司(Human Resources MicroSystems)的開發副經理。他們的HR應用程序套件正在與SAP和
PeopleSoft系統的能力和功能進行競爭。該應用程序的核心使用Visual FoxPro和.NET編寫,他們已經擁有適合中小組織的產品,也有適合大型
企業的產品。
Chris認為:
“…我推測全世界范圍內數以十億記的記錄存儲在FoxPro中,并且FoxPro DML是管理這些記錄的最好途徑。這種語言是編程世界中最平易
近人的語言,只需要很小的技巧就可以理解它”。
對于向.NET遷移的問題,他是這樣回答的:
“開發新解決方法的時候,我們在.NET上花費的時間要比在VFP上花費的時間更多,但是我們的核心業務仍然使用VFP。桌面應用程序仍然
使用VFP,僅僅是由于資源的限制,重新用.NET編寫代碼太大了。.NET窗體、報表和VFP桌面應用程序的其它特性需要被重新編寫用來提供相同
的終端用戶靈活性”。
它仍然是資源有限的經理的選擇
Visual FoxPro可以運行在八年以前的硬件上,而且還運行得很快。這可能是個可笑的證據,但是如果你在第三世界市場、軍事或政府部門
中工作過,你就知道能在舊的硬件上工作是個無可厚非的要求。發布和剝離使用FoxPro編寫的應用程序而不用擔心許可的問題一定是購買決策
的重要部分。
還有一些環境也是這樣的,如IT資源超標了,并且幾乎不可能維護舊系統。但是由于FoxPro的高發現能力,讓某個人計算出維護甚至于擴
展應用程序需要花費的資源相當容易。
VFP的MVP(最有價值成員)Garrett Fitzgerald這樣說道:
“長期以來FoxPro一直是不希望(或不能)花費錢財追趕最新技術的公司的面包和牛奶。小零售店不需要.NET/SQL Server解決方案來運行
自己的業務,也沒有花費這些錢的理由。FoxPro運行得很快,即使在相對更少的硬件上。但是,如果正確地編寫,Fox應用程序能夠(并且已
經)處理數百G的數據。”
對于他繼續選擇VFP的問題,他的回答是“因為我使用VFP的效率很高,并且可以給客戶提供極好的價值”。
FoxPro是數據為中心的應用程序的瑞士軍刀
我發現在交付VFP應用程序之后,我掌握了整個軟件開發的過程。我理解了從設計到維護再到遷移的問題。我理解了數據庫設計、面向對象
設計、用戶界面設計、業務對象設計、數據訪問層、COM和Web服務、企業設計模式的形形色色的細節。
你為什么需要關心Visual FoxPro?因為它無處不在,它強大、易于學習、便宜,并且想得到你職位的人也知道這種語言能實現什么功能
——還有,某些編程任務能夠快速、直接的進行特殊的數據庫維護。
換句話說,我希望成為一個理解這種工具的.NET開發者。即使我再也不會編寫任何FoxPro應用程序,我也會把它安裝在自己的計算機上。
Visul FoxPro 9.0是什么類型的數據庫系統
很久以來,FoxPro被眾多迷人的產品掩蓋了光芒,但直到現在它仍然是市場中用于完成數據事務的最佳工具。隨著9.0版本中引入新的增強功能,它還沒有走上很快過時的道路。
微軟的FoxPro小組準備在2004年底發布最新版FoxPro。這條消息使某些人感到很驚訝,因為我們經常可以聽到一些無知的人問“FoxPro?它還存在啊?”。但是在FoxPro社團中下一版本的FoxPro引起了很大的騷動。新版中將包含一個更快的本地數據引擎,支持更多的數據類型,SQL語句執行中更大的一致性,一個完全重新設計的可擴展報表編寫器,以及一系列效率和功能增強特性。
目前,一些應用程序仍然使用Visual FoxPro編寫和部署,但是未來美國公司對Visual FoxPro的采用和部署有顯著的下降趨勢。這主要是因為與.NET旗艦語言(例如C#和VB.NET)相比,微軟忽視了這種產品。市場支持的缺乏是VFP社團詬病的一個主要問題。
盡管受控(managed)代碼和嚴格的編譯器可以生成“更安全”、bug更少、更牢固的代碼——這個事實可能是真的,但是單個的FoxPro開發者可以在相對很短的時間內編寫一個成熟的桌面或Web應用程序。他們所需處理的工作復雜性只是實現應用程序和業務邏輯,而不是試圖理解笨重的框架組件(framework)或斟酌數據綁定的問題。
因此,你有必要擔心設計人員的某些偶然出現的失誤嗎?因為Visual FoxPro依舊存在,而且仍然有重要意義。它在自己的范疇之內滿足那些其它單個產品無法滿足的需求。此外,由于它能夠運行在更廉價的、舊的硬件上,運行遺留下來的代碼,而且仍然能夠執行現代的編程語言希望實現的事務,它仍然是哪些叛逆的組織、小型的資源有限的辦公室、獨立軟件開發者以及很多政府和政府運轉機構的選擇。
強大的家族
為了理解FoxPro遺留的能量,了解它的發展史是有幫助的。在八十年代中期,噴氣發動機實驗室(JPL)跟其它政府機構一樣,也使用微型和個人計算機。這些獨立的機器使工程師有時不用操作大型機就能處理大量的數據集合,同時還把簡單的類似英語的命令(他們可以在DOS下執行這些命令)組合到程序中了。這些程序變成了應用程序,并且一種新類型的應用程序開發人員誕生了。那時經常使用電子數據表和靜態數據包,但是它們都比較麻煩,并且容易造成數據丟失。
數據庫是處理大量數據的邏輯解決方案,因此Wayne Ratliff編寫了一個自己帶有數據庫的程序,并且同時添加了一組可以在數據上執行的命令。“Vulcan”帶有一個交互式的點提示符,使用易于記住的慣用語,允許工程師使用一組簡短的命令操作自己的數據——就像操作物理數據集合一樣。這個程序最終成為Ashton-Tate的dBa數據庫程序。
“dBa與BASIC、C、FORTRAN和COBOL程序是不同的,在dBa程序中很多麻煩的工作已經被做好了。數據維護是由dBASE而不是由用戶完成的,因此用戶可以把精力集中在自己的事務上,而不必與處理打開、讀取和關閉文件、管理空間分配這些麻煩的工作絞在一起。”——Wayne Ratliff
在它發布后的幾年之內,大量的dBa克隆產品沖擊了市場。FoxBa由于引人注目的高速度和穩定性獲得了很大的名氣。此外,Fox小組很敏捷,對用戶團體作出的響應更多。通過定期的修補,通過CompuServe和重要版本的及時支持,作為對用戶請求的回應,它在非常接近原始版本的同時,通過添加提高生產率的工具變得更快了。
FoxPro發布的時候,它為DOS程序員提供了窗口界面。Fox小組已經提供了跨平臺的編譯器,允許開發者在Unix或DOS上,以及在后來的Windows版本和Mac上部署應用程序。接著出現了FoxPro 2,它帶來了“Rushmore”(FoxPro著名的數據性能增強部分)技術、在線的SQL命令、圖形屏幕和報表編寫器。
Visual FoxPro
Visual FoxPro(它現在屬于微軟)帶來了OOP(面向對象編程)、完全的關系數據存儲和遠程數據訪問。因此,到1995年時,FoxPro開發者可以自然地使用SQL、使用面向對象編程、編寫多層結構的、跨平臺的應用程序——而且同時還可以兼容dBa II編寫的遺留代碼。
對于FoxPro開發者來說,Fox已經完全成為一種安全的應用程序開發途徑;你對于這種技術的投資不會受到廠商變革的影響。不幸的是,市場中的其它產品或同一個廠商的不同產品卻不再是這樣的。這導致了目前的對FoxPro和它在開發者世界中的地位的誤解。
VFP將不會成為一種.NET語言。這種可能性在開發VFP 7時就被慎重地考慮過,但是這種改變可能會導致一些嚴重的結果,最好的后果是不能保持向后兼容,最糟的后果是丟掉它強大的數據維護能力。.NET框架組件和VFP廣泛的語言和類之間多余的區域會帶來更多的混淆,很可能導致該產品更早地死亡。
由于Visual FoxPro將不會運行受控代碼,對微軟來說它就沒有戰略意義了,這可以理解。但是,它是一個成熟的開發平臺。你編寫、部署和維護多層的、高可用性的、桌面的、互聯網的、COM和Web服務的開發所需要的一切都已經由Visual FoxPro或第三方廠商提供了。它包含了牢固的面向對象語言和完全的關系化、速度很快的數據庫(支持2G或十億條記錄以下的表)和獨立的OLEDB數據提供程序。甚至連IDE也有完全的可擴充的設計表面,擁有內建在語言(和已發布資源)中的工具和向導等重要部分。它與SQL Server嚴格地兼容,擁有良好的COM交互操作能力——包括Office自動化、強大的XML處理和功能,以及與20年前編寫的代碼的兼容性。
目前VFP適合于哪些場合?
它仍然是希望完成事務的專業人員的選擇。
它特別適合那些主要工作不是編寫代碼的工作人員。
FoxPro 9.0 中文版命令使用問題
排序有幾種方法
索引法(該方法只改變記錄的邏輯順序,不改變物理順序,即記錄號不變,只變顯示順序和訪問順序):
要先給排序字段建立索引(若先前已建立則不用再建)
index on 分數 tag fs [descending] &&fs是索引的名,加[]中的按降序,不加按升序
然后將該索引設為主控索引:
t order to tag fs &&即可按分數排序,升序降序按索引的設定
另存(會建立一個新的表,內容與原表一致;但原表不會有變動,新表記錄的物理順序改變):
sort to 新表名 on 分數 [/A|/C|/D]
其中/A 升序 /D 降序 /C 不區分大小寫
數值型字段加小數位:
法一:
打開表向導修改結構:modify structure
選中要更改的字段,數值型的可以編輯小數位
法二:
使用sql命令
alter table 表名 alter 分數 N(6,2)
修改表結構,N表示數值型,6表示字段長度(小數點算一位),2表示小數位
FoxPro 9.0 教程
在編輯狀態下,雙擊文本框,在LostFocus(失焦點事件)中寫如下代碼:
bl=thisform.文本框名.value
u 數據表名
appe blank
repl 字段名 with bl
注意:文本框的數據類型必須與數據表的字段數據類型一致。這樣,只要你運行表單,在文本框內輸入數據,按回車鍵后就能把文本框內的數據寫到數據表里了。