




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第一次課VisualFoxpro工作界面與操作第二次課VisualFoxPro的表達式與函數第三次課數據庫基本概念、項目管理器第四次課VFP數據庫和數據表的建立第五次課表的基本操作
第六次課第七次課第八次課第九次課第十次課第十一次課第十二次課第十三次課第十四次課第十五次課第十六次課第十七次課第十八次課第十九次課第二十次課第二十一次課1/9/20231第一次課VisualFoxpro工作界面與操作第十三次課1第一次課VisualFoxpro工作界面與操作VisualFoxpro(VFP6)程序設計軟件的功能用途VisualFoxPro的界面VisualFoxpro的安裝VisualFoxPro的基本操作和工作方式VisualFoxPro的命令語法VisualFoxPro的數據類型、常量VisualFoxPro的環境配置1/9/20232科技學院王廣第一次課VisualFoxpro工作界面與操作VisualVFP6.0程序設計軟件的功能用途建立、操作、管理維護數據庫對數據庫中的各種數據進行操作;開發與數據庫相關的程序和軟件。VFP編程語言有自己的特點,開發的數據庫及軟件相對獨立,對系統硬件要求低,執行效率高,但對于大型數據庫編程量大。2006年VisualFoxpro的版本已達到V9.01/9/20233科技學院王廣VFP6.0程序設計軟件的功能用途建立、操作、管理維護數據庫VisualFoxPro的特性
1.用戶界面良好2.面向對象編程技術功能強3.快速創建應用程序4.數據庫的操作簡便5.多個用戶可以一起開發程序6.可與其他應用程序交互操作7.獨特的開發客戶/服務器解決方案8.兼容性好,可以升級早期版本1/9/20234科技學院王廣VisualFoxPro的特性 1.用戶界面良好1/8VisualFoxPro的安裝
安裝步驟:將安裝光盤插入CD-ROM驅動器。在“開始”菜單中,選擇“運行”。鍵入x:\setup,并且按ENTER鍵,這里x代表CD-ROM驅動器字母。或者在資源管理器中雙擊光盤目錄下的setup.exe文件,運行安裝程序。然后按照屏幕上顯示的指令操作。若要進行最小化安裝(15MB),請選擇“用戶自定義安裝”。該選項允許您只選取必須的文件。若要進行典型安裝(85MB),請選擇“完全安裝”。該選項不安裝幫助文件,但是安裝支持文件(包括ODBC)。
若要安裝包括ActiveX和企業文件的所有VisualFoxPro文件(192MB),請突出顯示“VisualFoxPro6.0”,再選擇“用戶自定義安裝”,然后在用來添加選項的“更改選項”對話框中選擇“全部選中”。1/9/20235科技學院王廣VisualFoxPro的安裝安裝步驟:1/8/20MSDNLibraryVisualStudio6.0(CHS)安裝示例和聯機文檔MSDN1安裝示例VisualFoxPro6.0示例需要使用“MSDN安裝向導”進行安裝。先選取“自定義”選項,然后選擇“VFP文檔”、“VFP產品示例”復選框。這些示例將被放置在公用的MSDN示例路徑下。您可以通過使用_SAMPLES系統變量或執行HOME(2)命令,以編程方式進行訪問。1/9/20236科技學院王廣MSDNLibraryVisualStudio6.0注意:如果選擇“典型”選項,VisualFoxPro將從MSDNCD而不從硬盤訪問該幫助文件。VisualFoxPro幫助文件(包括Foxhelp.chm)安裝于下面的位置:drive:\ProgramFiles\MicrosoftVisualStudio\Msdn98\98vs\1033當您在VisualFoxPro中按F1鍵、在“命令”窗口輸入“HELP”、或使用“幫助”菜單請求幫助時,如果已安裝MSDN,則VisualFoxPro的默認行為是調用Msdnvs98.col。如果該文件不存在,則將默認使用Foxhelp.chm。1/9/20237科技學院王廣注意:如果選擇“典型”選項,VisualFoxPro將啟動VisualFoxPro啟動VisualFoxPro有多種方法,可采用以下三種方式之一。1.從“開始”菜單啟動2.從資源管理器中啟動3.從“運行”對話框中啟動1/9/20238科技學院王廣啟動VisualFoxPro啟動VisualFoxPro退出VisualFoxPro(1)在MicrosoftVisualFoxPro主菜單中,打開“文件”菜單,選擇“退出”選項;(2)在MicrosoftVisualFoxPro的系統環境窗口,單擊其右上角的“退出”按鈕;(3)按Ctrl+Alt+Del組合鍵,進入“關閉程序”窗口,按“結束任務”按鈕;(4)在“命令”窗口,輸入命令Quit。(5)按Alt+F4組合鍵;1/9/20239科技學院王廣退出VisualFoxPro(1)在MicrosoftVVisualFoxPro的界面VisualFoxPro界面,是由標題欄、菜單欄、工具欄、工作區、狀態欄和命令窗口組成的。1/9/202310科技學院王廣VisualFoxPro的界面VisualFoxPro界菜單欄工具欄命令窗口狀態欄工作區標題欄1/9/202311科技學院王廣菜單欄工具欄命令窗口狀態欄工作區標題欄1/8/202311科標題欄標題欄位于屏幕界面的第一行,它包含系統程序圖標、主屏幕標題、最小化按鈕、最大化按鈕和關閉按鈕5個對象。1/9/202312科技學院王廣標題欄標題欄位于屏幕界面的第一行,它包含系統程序圖標、主屏幕菜單欄菜單欄位于屏幕的第二行,它包含文件、編輯、顯示、格式、工具、程序、窗口和幫助8個菜單選項。當單擊其中一個菜單選項時,就可以打開一個對應的“下拉式”菜單,在該“下拉式”菜單下,通常還有若干個子菜單選項,當選擇其中一個子菜單選項時,就可以執行一個操作。1/9/202313科技學院王廣菜單欄菜單欄位于屏幕的第二行,它包含文件、編輯、顯示、格式、VisualFoxPro的菜單“文件”菜單:新建、打開、關閉、保存各種項目、表、數據庫表單等,數據導入導出。“編輯”菜單:撤銷、重做、復制、粘貼、查找等基本編輯操作。“顯示”菜單:打開“工具”子菜單,打開“工具欄”對話框,選擇或定制工具欄。“格式”菜單:對字體、段落格式進行設置。“工具”菜單:打開數據庫和程序的設計向導;宏設計器;“類”、“組件”和“代碼”管理器;調試器;“選項”——配置VFP的工作環境。1/9/202314科技學院王廣VisualFoxPro的菜單“文件”菜單:新建、打開、關菜單文件菜單編輯菜單顯示菜單1/9/202315科技學院王廣菜單文件菜單編輯菜單顯示菜單1/8/202315科技學院菜單格式菜單工具菜單程序菜單窗口菜單幫助菜單1/9/202316科技學院王廣菜單格式菜單工具菜單程序菜單窗口菜單幫助菜單1/8/2023“程序”菜單:控制程序的運行、取消、掛起、進行程序編譯。“窗口”菜單:各類窗口的顯示、關閉、排列。“幫助”菜單:對數據庫設計和程序設計提供各種幫助,顯示軟件版本信息。1/9/202317科技學院王廣“程序”菜單:1/8/202317科技學院王廣工具欄VisualFoxPro系統提供了11種常用的工具欄:(1)常用工具欄(2)布局工具欄(3)表單控件工具欄(4)表單設計器工具欄(5)查詢設計器工具欄(6)視圖設計器工具欄(7)數據庫設計器工具欄(8)報表控件工具欄(9)報表設計器工具欄(10)調色板工具欄(11)打印預覽工具欄1/9/202318科技學院王廣工具欄VisualFoxPro系統提供了11種常用的工具欄激活工具欄的操作步驟例:依次打開菜單項顯示
工具欄
“常用”
確定1/9/202319科技學院王廣激活工具欄的操作步驟例:依次打開菜單項顯示工具欄“常用命令窗口命令窗口位于菜單欄和狀態欄之間,是VisualFoxPro系統命令執行、編輯的窗口。在命令窗口中,可以輸入命令實現對數據庫的操作管理;也可以用各種編輯工具對操作命令進行修改、插入、刪除、剪切、拷貝、粘貼等操作;還可以在此窗口建立命令文件并運行命令文件。在“窗口”菜單下,選擇“隱藏”,可以關閉命令窗口;選擇“命令窗口”,可以彈出命令窗口。1/9/202320科技學院王廣命令窗口命令窗口位于菜單欄和狀態欄之間,是VisualFo工作區與狀態欄工作區在工具欄與狀態欄之間的一大塊空白區域是系統工作區,各種工作窗口將在這里展開。狀態欄位于屏幕的最底部,用于顯示某一時刻的管理數據的工作狀態。(1)SETSTATUSBARON|OFF,可控制屏幕上的狀態欄是否出現。(2)如果當前工作區中沒有表文件打開,狀態欄的內容是空白;如果當前工作區中有表文件打開,狀態欄顯示表名、表所在的數據庫名、表中當前記錄的記錄號、表中的記錄總數、表中的當前記錄的共享狀態等內容。1/9/202321科技學院王廣工作區與狀態欄工作區1/8/202321科技學院王廣VisualFoxpro的工作方式VFP支持兩類不同的工作方式一、交互操作方式 用戶在命令窗口輸入命令或通過程序提供的操作界面如菜單、向導、設計器等輔助工具完成操作。二、程序執行方式 用戶根據需要解決的問題,將VFP命令編成特定的序列,并存入程序文件,需要時,通過特定的命令(如DO命令)調用程序文件,VFP就能自動執行這一程序文件(也包括設計用戶需要的程序操作界面等)。1/9/202322科技學院王廣VisualFoxpro的工作方式VFP支持兩類不同的工作程序操作方式程序操作就是預先將實現某種操作處理的命令序列編成程序,通過運行程序來實現操作、管理數據庫的操作方式。根據實際應用需要編寫的應用程序,能夠為用戶提供界面更簡潔直觀、操作步驟更符合業務處理流程和規范要求的操作應用環境。但程序的編制,需要經過專門訓練,只有具備一定設計能力的專業人員方能勝任,普通用戶很難編寫大型的、綜合性較強的應用程序。1/9/202323科技學院王廣程序操作方式程序操作就是預先將實現某種操作處理的命令序列編成菜單操作方式VisualFoxPro6.0系統將許多命令做成菜單命令選項,用戶通過選擇菜單項來使用數據庫的操作方式。在菜單方式中,很多操作是通過調用相關的向導、生成器、設計器工具,以直觀、簡便、可視化方式完成對系統的操作,用戶不必熟悉命令的細節和相應的語法規則,通過對話來完成操作。有了這種方式,一般用戶無需編程就可完成數據庫的操作與管理1/9/202324科技學院王廣菜單操作方式VisualFoxPro6.0系統將許多命令程序啟動時的交互界面1/9/202325科技學院王廣程序啟動時的交互界面1/8/202325科技學院王廣例如,選擇“創建新的應用程序”,彈出應有程序向導,通過該向導完成后續的設置和操作。1/9/202326科技學院王廣例如,選擇“創建新的應用程序”,彈出應有程序向導,通過該向導又如,點擊“文件”菜單->“新建…”子菜單,彈出“新建”對話框,選擇新建某種對象,如:項目、數據庫、表、視圖等1/9/202327科技學院王廣又如,點擊“文件”菜單->“新建…”子菜單,1/8/2023使用工具欄當中的“打開”按鈕可打開各種文件或對象,對其進行修改:1/9/202328科技學院王廣使用工具欄當中的“打開”按鈕可打開各種文件或對象,對其進行修命令操作方式命令操作是在命令窗口中逐條輸入命令,直接操作指定對象的操作方式。命令操作為用戶提供了一個直接操作的手段,其優點是能夠直接使用系統的各種命令和函數,有效操縱數據庫,但要求熟練掌握各種命令和函數的格式、功能、用法等細節;1/9/202329科技學院王廣命令操作方式命令操作是在命令窗口中逐條輸入命令,直接操作指定VisualFoxPro的命令語法使用VFP操作數據庫及其數據,使用的是命令式語言,一條命令相當于一般高級語言中的一段程序,能夠完成一項復雜的功能。命令格式由一個稱為命令字的動詞開頭,后隨一個或若干子句,用來說明命令的操作對象、操作結果與操作條件。如:useSB&&打開名稱為SB的表文件browselast
&&瀏覽SB表的內容listfor價格<10000&&列表顯示“價格”低于10000的項目copytoZSBfor
主要設備&&把當前表SB中的“主要設備”字段內容復制到名稱為ZSB的表文件中1/9/202330科技學院王廣VisualFoxPro的命令語法使用VFP操作數據庫及其(SB.dbf:設備清單表)useSBbrowselastlistfor價格<10000
copytoZSBfor
主要設備
1/9/202331科技學院王廣(SB.dbf:設備清單表)1/8/202331科技學院命令特點采用英語祈使句格式,命令簡潔規范(專用名詞可以使用漢字)操作對象、結果和條件均可以用命令子語句形式表示,使命令的附屬功能可方便地增刪。“非過程化”語言,只講操作要求,不用描述具體執行過程VFP的命令既可以逐條交互的方式執行,又可以編寫成程序,以“程序文件”方式執行。1/9/202332科技學院王廣命令特點1/8/202332科技學院王廣命令分類建立和維護數據庫命令數據查詢命令程序設計命令(程序控制、輸入輸出、打印、運行環境等)界面設計命令(菜單、窗口、表單控件等)管理文件和程序命令面向對象的設計命令其他命令1/9/202333科技學院王廣命令分類1/8/202333科技學院王廣VisualFoxPro的命令書寫規則1、命令動詞必須寫在命令的最前面2、命令動詞與短語、短語與短語、短語的各個部分之間必須以一個或多個空格隔開。3、命令動詞、各短語中的保留字及函數名都可簡寫為前四個字符,且大小寫無關。如DISPLAY可簡寫為DISP。4、一個命令行的最大長度是254個字符,如果命令太長,一行寫不下,可在行末用“;”續行。并按回車換行,在下一行繼續輸入該命令。5、一行只能寫一個命令。1/9/202334科技學院王廣VisualFoxPro的命令書寫規則1、命令動詞必須寫在在命令語法格式中,對符號作如下規定:[]:方括號,表示是可選的項目。若選擇該項目,不要寫方括號本身。<>:角括號,表示括號內的項目是必須要選的,但不要寫角括號本身。|:堅線號,表示兩個項目中選擇其中一個,但不要寫堅線號本身。…:省略號,表示前項可繼續重復多次選擇。():圓括號,表示括號中的內容為參數,參數的數量不限,一般要有參數存在。1/9/202335科技學院王廣在命令語法格式中,對符號作如下規定:1/8/202335科技例如:通過命令新建數據表,其命令格式為CREATETABLE|DBFTableName1[NAMELongTableName][FREE]
(FieldName1
FieldType[(nFieldWidth[,nPrecision])]
[NULL|NOTNULL]
[CHECKlExpression1[ERRORcMessageText1]]
[DEFAULTeExpression1]
[PRIMARYKEY|UNIQUE]
[REFERENCESTableName2[TAGTagName1]]
…1/9/202336科技學院王廣例如:通過命令新建數據表,其命令格式為1/8/202336科CREATETABLE
orders;
(OrderIdiPRIMARYKEY,; CustIdiREFERENCES
customer
TAGCustId,; OrderAmty(4),; OrderQtyi;
DEFAULT10;
CHECK
(OrderQty>9);
ERROR"OrderQuantitymustbeatleast10",; DiscPercentn(6,2)NULL;
DEFAULT.NULL.,;
CHECK(OrderAmt>0)
ERROR"OrderAmountMustbe>0"
)
1/9/202337科技學院王廣CREATETABLEorders;1/8/20233VisualFoxPro數據類型VFP中每一個數據都有一定的類型,數據類型決定了數據的存儲方式和運算方式,因此,在VFP中任何數據須先定義其數據類型,然后才能對其進行數據處理。VFP提供了13種數據類型,分別是:字符型、數值型、貨幣型、邏輯型、日期型、日期時間型、整型、浮點型、雙精度型、備注型、通用型、字符型(二進制)備注型(二進制)。其中6種類型只用于數據表的字段,此外還有一種特殊數據類型Variant(變量),它包含(指代)了上述全部的數據類型以及null值,如果設置為這種類型數據,則程序會根據數據形態設定合適的數據類型。1/9/202338科技學院王廣VisualFoxPro數據類型VFP中每一個數據都有一定VisualFoxPro的數據類型1.字符型(character)用字母C表示,字符型數據包括中文字符、英文字符、數字字符和其他ASCII字符,其長度最長不超過254個字符。2.數值型(Numeric)用字母N表示,用來表示數量并可以進行算術運算的數據類型。由阿拉伯數字、正負號、小數點組成。VisualFoxPro中,具有數值特征的數據類型還有整型、浮點型和雙精度型,但這三種數據類型只用于字段變量。1/9/202339科技學院王廣VisualFoxPro的數據類型1.字符型(charac3.日期型(Date)用字母D表示,用來表示日期的數據類型。日期的默認格式為:{mm/dd/yy}
其中MM表示月,DD表示日,YY表示年。日期型數據的長度固定為8位。4.日期時間型(DateTime)用字母T表示,是用來表示日期和時間,默認格式為:{mm/dd/yyhh:mm:ss}其中mm,dd,yy的意義與日期型相同,hh,mm,ss分別表示時、分、秒。長度也固定為8位。5.邏輯型(Logic)用字母L表示,用來描述客觀事物真假或是非判斷的數據類型。只有兩個取值:真(.t.或.T.)和假(.f.或.F.),邏輯型數據長度固定為1位。1/9/202340科技學院王廣3.日期型(Date)1/8/202340科技學院王廣6.貨幣型(Currency)用字母Y表示,為存儲貨幣值而使用的一種數據類型,它默認保留4位小數,占據8字節的存儲空間。7.備注型(Memo)用字母M表示,用來存放較多字符的數據類型。只用于表中字段類型的定義。字段長度固定為4個字節。實際數據存放在與表文件同名的備注文件(.fpt)中,其長度依實際需要而定。8.通用型(General)用字母G表示,是用來存儲OLE對象的數據類型。可以是電子表格、文擋、圖形、聲音等,跟備注型數據一樣,它只用于表中字段類型的定義,通用型數據字段長度固定為4位。1/9/202341科技學院王廣6.貨幣型(Currency)1/8/202341科技學院常量常量是在命令或程序中可直接引用、具有具體值的數據項,其特征是在整個操作過程中它的值和表現形式保持不變。VisualFoxPro按常量取值的數據類型,將常量分為6種類型:數值型常量、貨幣型常量、字符型常量、邏輯型常量、日期型常量、日期時間型常量。1/9/202342科技學院王廣常量常量是在命令或程序中可直接引用、具有具體值的數據項,其特字符型常量1.字符型常量由任意ASCII字符、漢字和漢字字符組成的字符型數據,字符型常量又稱為字符串。為與其他類型常量、變量和標識符相區別,VisualFoxPro要求將字符串中所有字符,用一對雙引號“””或單引號“‘”或方括號“[]”作為定界符對括起來。如:“
Iamastudent.”,‘中華人民共和國’,[VisualFoxPro6.0系統],"‘book’的中文意思是‘書’。"都是字符串常量。如果字符串中包含一種定界符,則必須用另一種定界符括起來。如:“[計算機]”1/9/202343科技學院王廣字符型常量1.字符型常量1/8/202343科技學院王日期時間型常量2.日期型常量日期型常量是表示日期值的數據,其默認格式是:{mm/dd/[yy]yy}如{10/01/02}和{10/01/2002}均表示2002年10月1日這一日期常量值。3.日期時間型常量VisualFoxPro系統中增加了一種表示日期和時間值的日期時間型常量,其默認格式是:{mm/dd/[yy]yy[,]hh:mm:ss[a|p]}其中a和p分別表示AM(上午)和PM(下午)。日期值和日期時間值的輸入格式與輸出格式并不完全相同,特別是輸出格式受系統環境設置的影響,用戶可根據應用需要進行相應調整、設置。1/9/202344科技學院王廣日期時間型常量2.日期型常量1/8/202344科技學院設置世紀值(1)日期格式中的世紀值通常日期格式中用2位數表示年份,但涉及到世紀問題就不便區分。VisualFoxPro提供設置命令進行相應設置。命令格式:SETCENTURYON|OFF|TO[nCentury]命令功能:ON:日期數據顯示10位,其中年份4位,即日期值輸出時顯示年份值;OFF:(默認值)。日期數據顯示8位,年份2位,即日期值輸出時不顯示年份值;TO[nCentury]:指定日期數據所對應的世紀值。nCentury是一個1~99的整數,代表世紀數。1/9/202345科技學院王廣設置世紀值(1)日期格式中的世紀值1/8/202345科技學設置日期顯示格式(2)設置日期顯示格式用戶可以調整、設置日期值和時間值的顯示輸出格式。既可以用命令方式設置,也可以用菜單方式設置。命令格式:SETDATE[TO]AMERICAN|ANSI|BRITISH|FRENCH|GERMAN|ITLIAN|JAPAN|USA|MDY|DMY|YMD|SHORT|LONG命令功能:設置日期型和日期時間型數據的顯示輸出格式。系統默認為AMERICAN美國格式。如果日期格式設置為SHORT或LONG格式,VisualFoxPro系統將按Windows系統設置的短日期格式或長日期格式顯示輸出日期數據,而且SETCENTURY命令的設置被忽略。
1/9/202346科技學院王廣設置日期顯示格式(2)設置日期顯示格式1/8/202346科 各種日期格式設置所對應的日期顯示輸出格式,見表2-1所示。 表2-1系統日期格式
Windows長日期格式LONGyy/mm/ddJAPANWindows短日期格式SHORTdd-mm-yyITALIANyy/mm/ddYMDdd.mm.yyGERMANdd//mm/yyDMYdd//mm/yyBRITISH/FRENCHmm/dd/yyMDYyy.mm.ddANSImm-dd-yyUSAmm/dd/yyAMERICAN日
期
格
式
設
置
值
日
期
格
式
設
置
值
1/9/202347科技學院王廣 各種日期格式設置所對應的日期顯示輸出格式,見表2-1所示。設置日期2000年兼容性
通常日期型和日期時間型數據的結果,與SETDATE命令和SETCENTURY命令設置狀態及當前系統時間有關。由于系統時間與相應設置不同,同一數據的結果可能有不同的解釋。如日期值{10/11/12}可以解釋為1912年10月11日、2012年10月11日、1912年11月10日、1910年11月12日或者2010年11月12日等。這顯然會導致系統混亂,而且還可能造成2000年兼容性錯誤,影響系統正常、有效的操作運行。1/9/202348科技學院王廣設置日期2000年兼容性1/8/202348科技學院王嚴格的日期格式VisualFoxPro系統增加了一種所謂嚴格的日期格式。不論哪種設置,按嚴格日期格式表示的日期型和日期時間型數據,都具有相同的值和表示形式。嚴格的日期格式是:{^yyyy-mm-dd[,][hh[:mm[:ss]][a|p]]}^符號表明該格式是嚴格的日期格式,并按照YMD的格式解釋日期型和日期時間型數據,它是嚴格日期格式的標志,不可缺少。有效的日期型和日期時間型數據分隔符為:連字符“-”、正斜杠“/”、句點“.”和空格。如{^2002-10-01}、{^2002-10-0110:30:30a},分別表示2002年10月1日及該日上午10時30分30秒這兩個日期數據。1/9/202349科技學院王廣嚴格的日期格式VisualFoxPro系統增加了一種所謂嚴VisualFoxPro系統默認采用嚴格的日期格式,并以此檢測所有日期型和日期時間型數據的格式是否規范、合法。為與早期版本兼容,用戶通過命令或菜單設置改變這一格式。命令設置的命令格式:SETSTRICTDATETO[0|1|2]命令功能:0:關閉嚴格的日期格式檢測,即設置日期格式按傳統的嚴格的格式;1:設置嚴格的日期格式檢測(默認值),要求所有日期型和日期時間型數據均按嚴格的格式;2:設置與1相同,但如果程序代碼中出現CTOD()和CTOT()函數時,會出現編譯錯誤。這個設置最適合調試時使用,用來檢測2000年兼容性錯誤;省略:恢復系統默認值,等價于1的設置。1/9/202350科技學院王廣VisualFoxPro系統默認采用嚴格的日期格式,并以此日期格式示例?SET("Date"),?SET("Century")?SET("Strictdate")?date()SETCENTURYON?date()SETDATETOYMD?date()?{02/22/09} &&提示輸入日期數據不正確?{^2009/02/22} &&則可以正確顯示SETSTRICTDATETO0?{09/02/22} &&此時可以正確顯示日期,設置SETSTRICTDATETO0可以省略世紀的輸入,即,年使用后2位,系統默認使用當前世紀設置狀態,由SETCENTURY決定。?{02/22/09} &&按美國格式輸入日期將無法正確顯示,說明無論SETSTRICTDATETO設置為何種狀態,日期都要按年/月/日的順序輸入,1/9/202351科技學院王廣日期格式示例?SET("Date"),SETSTRICTDSETSTRICTDATETO0?{09/02/22} &&此時可以正確顯示日期,設置SETSTRICTDATETO0可以省略世紀的輸入,即,年使用后2位,系統默認使用當前世紀設置狀態,由SETCENTURY決定。?{02/22/09} &&按美國格式輸入日期將無法正確顯示,說明無論SETSTRICTDATETO設置為何種狀態,日期都要按年/月/日的順序輸入,即日期輸入方式由SETDATETO…決定SETDATETOAMERICAN?{02/22/09} &&按美國格式輸入日期則系統可以正確識別1/9/202352科技學院王廣SETSTRICTDATETO01/8/202352科邏輯型常量4.邏輯型常量邏輯型常量就是表示邏輯判斷結果“真”或“假”的邏輯值。邏輯常量只有真和假兩種,分別用(.t.或.y.)和(.f.或.n.)表示真和假。一般應在表示邏輯常量的字母左右加注圓點符“.”以示區別。邏輯型常量在內存中占用一個字節。邏輯型常量只有真假兩個值。用.T.或.t.、.Y.或.y.表示邏輯值為真,用.F.或.f.、.N.或.n.表示邏輯值為假。字母兩邊的英文句點不能省略。1/9/202353科技學院王廣邏輯型常量4.邏輯型常量1/8/202353科技學院王數值型、貨幣型常量5.數值型常量也稱常數,用來表示一個數量的大小,由數字0-9、小數點和正負符號組成。例如,12.3,-67,3.14等。也可以使用科學計數法形式表示,例如:6.789*105可表示為6.789E5。數據最大長度為20位,其中小數點占1位。示例:數值型常量(538,-10.5)浮點型常量(-1.05E+20)6.貨幣型常量用來表示貨幣值,書寫格式與數值型類似,但要加上一個前置的貨幣符號$。貨幣型數據在存儲和計算時,采用4位小數,如果多于4位,那么系統自動四舍五入。貨幣型常量不能用科學計數法表示。1/9/202354科技學院王廣數值型、貨幣型常量5.數值型常量1/8/202354科技學院VisualFoxPro系統環境的配置VisualFoxPro系統環境的配置,決定了VisualFoxPro系統的操作環境和工作方式。設置是否合理、適當,直接影響系統的操作運行效率和操作的方便性。系統安裝時按默認方式進行了相應的設置。VisualFoxPro系統允許用戶設置大量參數控制其工作方式。通過設置系統環境,可以添加或刪除VisualFoxPro控件、更新WindowsRegistry注冊項、改變選項欄和工具欄、安裝ODBC數據源等。1/9/202355科技學院王廣VisualFoxPro系統環境的配置VisualFox設置默認目錄的菜單操作方法環境設置包括主窗口標題、默認目錄、項目、編輯器、調試器及表單工具選項、臨時文件存儲、拖放字段對應的控件和其他選項等內容運用“選項”對話框或SET命令進行附加的配置設定,還可以通過配置文件進行設置。
工具選項文件位置
默認目錄1/9/202356科技學院王廣設置默認目錄的菜單操作方法環境設置包括主窗口標題、默認目錄、設置默認目錄的命令操作在命令窗口輸入下列命令:setdefaultto[文件夾]例: mdd:\mypro &&在D盤建立子目錄mypro setdefaulttod:\mypro &&文件夾名稱中不能有空格或其他不可用符號1/9/202357科技學院王廣設置默認目錄的命令操作在命令窗口輸入下列命令:1/8/202設置文件搜索路徑SETPATHTO[Path]Path,可以指定多個路徑,用逗號或分號隔開。當使用命令打開或修改某個文件而沒有指明路徑時VisualFoxpro會在你所指定的路徑尋找文件。如:SETPATHTOd:\,d:\test\1/9/202358科技學院王廣設置文件搜索路徑SETPATHTO[Path]1/8顯示VFP設置顯示設置運行VisualFoxPro之后,可以使用“選項”對話框或DISPLAYSTATUS命令,也可以通過顯示各SET命令的值,檢查環境設置。若要顯示多個環境設置
從“工具”菜單中選擇“選項”來顯示“選項”對話框并查看當前設置。—或者—在命令窗口中鍵入DISPLAYSTATUS命令。若要顯示單個環境設置
在“命令”窗口中使用SET()函數顯示任何SET命令的當前值。例如,若要查看SETTALK命令的當前狀態,可鍵入:?SET("TALK")注釋由于設置僅在當前數據工作期有效,所以您必須收集設置值并把它們放置在一個程序或表單的Init事件代碼中,以供每個私有數據工作期使用。1/9/202359科技學院王廣顯示VFP設置顯示設置1/8/202359科技學院王廣若要把“選項”對話框設置反映到“命令”窗口中
在“選項”對話框中做設置的選擇。按下SHIFT鍵然后選擇“確定”。設置反映在“命令”窗口中。從“命令”窗口復制設置命令。1/9/202360科技學院王廣若要把“選項”對話框設置反映到“命令”窗口中1/8/2021/9/202361科技學院王廣1/8/202361科技學院王廣VisualFoxPro的向導VisualFoxPro系統為用戶提供許多功能強大的向導(Wizards)。用戶通過系統提供的各種不同的向導設計器,不用編程就可以創建良好的應用程序界面,并完成許多有關對數據庫的操作、管理功能,為非專業用戶提供了一種較為簡便的操作使用方式。常用的向導設計器有:表向導、報表向導、表單向導、查詢向導等。1/9/202362科技學院王廣VisualFoxPro的向導VisualFoxPro系VisualFoxPro6.0系統提供的向導如下表所示。表向導報表向導一對多報表向導標簽向導分組/總計報表向導表單向導一對多表單向導查詢向導交叉表向導本地視圖向導遠程視圖向導導入向導文檔向導圖表向導應用程序向導SQL升遷向導數據透視表向導安裝向導1/9/202363科技學院王廣VisualFoxPro6.0系統提供的向導如下表所示。向導1/9/202364科技學院王廣向導1/8/202364科技學院王廣1/9/202365科技學院王廣1/8/202365科技學院王廣VisualFoxPro設計器VisualFoxPro系統提供的設計器,為用戶提供了一個友好的圖形界面。用戶可以通過它創建并定制數據表結構、數據庫結構、報表格式和應用程序組件等。常用的設計器有:表設計器、查詢設計、視圖設計器、列表框設計器、報表設計器、數據庫設計器、菜單設計器等。1/9/202366科技學院王廣VisualFoxPro設計器VisualFoxPro系VisualFoxPro6.0提供的設計器如下表所示。表設計器查詢設計器視圖設計器表單設計器報表設計器標簽設計器數據庫設計器數據庫設計器連接設計器菜單設計器數據環境設計器1/9/202367科技學院王廣VisualFoxPro6.0提供的設計器如下表所示。表設計器點擊“新建”按鈕或“文件”>“新建”菜單,選擇項目、數據庫、表等,打開相應設計器。
1/9/202368科技學院王廣設計器點擊“新建”按鈕或“文件”>“新建”菜單,選擇項目、數表設計器示例:1/9/202369科技學院王廣表設計器示例:1/8/202369科技學院王廣查詢設計器示例:1/9/202370科技學院王廣查詢設計器示例:1/8/202370科技學院王廣表單設計器示例:1/9/202371科技學院王廣表單設計器示例:1/8/202371科技學院王廣報表設計器示例:1/9/202372科技學院王廣報表設計器示例:1/8/202372科技學院王廣數據庫設計器1/9/202373科技學院王廣數據庫設計器1/8/202373科技學院王廣VisualFoxPro生成器概述生成器是用來幫助設置表單上控件屬性的工具。與向導不同,生成器是可重入的,這樣就可以不止一次地打開某一控件的生成器。VisualFoxPro為許多通用的表單控件,如表格、列表框、組合框、復選框、命令按鈕組和選項按鈕組等,提供了生成器。如果要激活生成器,只需在表單或類設計器中選定的對象上單擊鼠標右鍵,再選擇“生成器”菜單項即可。例如,可在表格控件上激活生成器,來設定該表格的可視化的樣式和數據源。1/9/202374科技學院王廣VisualFoxPro生成器概述生成器是用來幫助設置表單VisualFoxPro還包括一些特定的生成器,這些生成器僅能用于“組件管理庫”中的一些基本類。如果將一個類從“組件管理庫”拖放至表單,則會自動激活相應的生成器。例如,如果從“組件管理庫”中將HyperLinkLabel類拖放至一表單,則會啟動生成器,提示輸入標簽的標題和目標URL。當運行該表單時,單擊此標簽將啟動Web瀏覽器并連接到在生成器中輸入的目標URL。此后在需要時,還可以重新進入生成器,修改目標URL。1/9/202375科技學院王廣VisualFoxPro還包括一些特定的生成器,這些生成迅速創建功能齊全的應用程序應用程序生成器將一組樣式應用于選定的同類型控件自動格式生成器設置組合框控件的屬性組合框生成器設置命令按鈕組控件的屬性命令按鈕組生成器設置編輯框控件的屬性編輯框生成器添加字段,作為表單的新控件表單生成器設置表格控件的屬性表格生成器設置列表框控件的屬性列表框生成器設置選項按鈕組控件的屬性選項按鈕組生成器設置觸發器來控制相關表中記錄的插入、更新和刪除,以確保參照完整性參照完整性生成器設置文本框控件的屬性文本框生成器1/9/202376科技學院王廣迅速創建功能齊全的應用程序應用程序生成器1/8/2023VisualFoxPro系統提供的生成器,可以簡化創建和修改用戶界面程序的設計過程,提高軟件開發的質量。每個生成器都由一系列選項卡組成,允許用戶訪問并設置所選對象的屬性。用戶可以將生成器生成的用戶界面直接轉換成程序代碼,把用戶從逐條編寫程序、反復調試程序的工作中解放出來。常用的生成器有:組合框生成器、命令組生成器、表達式生成器、列表框生成器等。1/9/202377科技學院王廣VisualFoxPro系統提供的生成器,可以簡化創建和修每個生成器包含若干個選項卡,允許用戶訪問并設置所選擇對象的相關屬性。用戶可將生成器生成的用戶界面直接轉換成程序編碼,使用戶從逐條編寫程序代碼、反復調試程序的手工作業中解放出來。VisualFoxPro6.0提供的生成器如下表所示。
自動格式化生成器組合框生成器命令組生成器編輯框生成器表達式生成器表單生成器網格生成器列表框生成器參照完整性生成器文本框生成器選項組生成器1/9/202378科技學院王廣每個生成器包含若干個選項卡,允許用戶訪問并設置所選擇對象的相程序生成器Alt+F2打開應用程序生成器1/9/202379科技學院王廣程序生成器Alt+F2打開應用程序生成器1/8/20237表單生成器使用“表單生成器”向表單中添加字段十分方便,這里的字段用作新的控件。可以在“表單生成器”中選擇選項,來添加控件和指定樣式。若要使用“表單生成器”
在“表單設計器”中,在一個新的或現有的表單上單擊鼠標右鍵。–或者–從“表單”菜單中選擇“快速表單”。當選擇“確定”時,生成器關閉,各個選項卡中的屬性設置開始生效。生成器選項卡字段選取:指定作為格式控制添加的字段。樣式:為控件提供幾種樣式選項,如果必要,還提供放大表單的選項。表單大小只放大到適合“最大設計區”的大小,就象在“選項”對話框的“表單”選項卡中設置的一樣。1/9/202380科技學院王廣表單生成器使用“表單生成器”向表單中添加字段十分方便,這里的表單生成器1/9/202381科技學院王廣表單生成器1/8/202381科技學院王廣編輯框生成器若要使用“編輯框生成器”使用“表單控件”工具欄,將一個編輯框控件放在表單上。
選中該編輯框控件,并單擊鼠標右鍵,然后從“表單設計器”快捷菜單上選擇“生成器”。這時就會出現一個與選中的控件相對應的對話框。從對話框中選擇合適的選項,然后選擇“確定”。當選擇“確定”時,生成器關閉,各個選項卡中的屬性設置開始生效。生成器選項卡格式為編輯框指定多種的格式選項。樣式指定編輯框的外觀形式、邊框和對齊方式。值指定存貯編輯框的值的字段。1/9/202382科技學院王廣編輯框生成器若要使用“編輯框生成器”1/8/202382科技編輯框生成器1/9/202383科技學院王廣編輯框生成器1/8/202383科技學院王廣參照完整性生成器“參照完整性(RI)生成器”幫助設置觸發器,用來控制如何在相關表中插入、更新或者刪除記錄,確保參照完整性。“RI生成器”在以下情況下顯示:在“數據庫設計器”中雙擊兩個表之間的關系線,并在“編輯關系”對話框中選擇“參照完整性”按鈕。
從“數據庫設計器”快捷菜單中選擇“編輯參照完整性”選項。
選擇“數據庫”菜單中的“編輯參照完整性”選項。生成器選項卡更新規則:指定修改父表中關鍵字(key)值時所用的規則。刪除規則:指定刪除父表中的記錄時所用的規則。插入規則:指定在子表中插入新的記錄或更新已存在的記錄時所用的規則。1/9/202384科技學院王廣參照完整性生成器“參照完整性(RI)生成器”幫助設置觸發參照完整性生成器1/9/202385科技學院王廣參照完整性生成器1/8/202385科技學院王廣表達式生成器1/9/202386科技學院王廣表達式生成器1/8/202386科技學院王廣自動格式生成器1/9/202387科技學院王廣自動格式生成器1/8/202387科技學院王廣1/9/202388科技學院王廣1/8/202388科技學院王廣本次課結束。1/9/202389科技學院王廣本次課結束。1/8/202389科技學院王廣第二次課VisualFoxPro的表達式與函數VisualFoxPro的變量VisualFoxPro的表達式VisualFoxPro的常用函數1/9/202390科技學院王廣第二次課VisualFoxPro的表達式與函數VisualVisualFoxPro的變量變量是在程序運行過程中可以改變其取值或數據類型的數據項。(在使用過程中其值可以改變的量)在VisualFoxPro中,常用的變量類型有:內存變量、字段變量、數組變量和系統變量。
此外,作為面向對象的程序語言,VisualFoxPro在進行面向對象的程序設計中引入了對象的概念,對象實質上也是一類變量。確定一個變量,需要確定其三個要素:變量名、數據類型和變量值。1/9/202391科技學院王廣VisualFoxPro的變量變量是在程序運行過程中可以改命名規則在VisualFoxPro系統中,將表示、存儲數據的常量、變量、數組、字段、記錄、對象、表、數據庫等,都稱之為數據容器。所有數據容器均需命名以相互區別,為規范各類對象的命名,VisualFoxPro系統推薦了若干“命名規則”供用戶參考,以提高操作命令與程序的可讀性和規范性。使用字母,下劃線和數字命名。一般建議不采用漢字命名;命名以字母或下劃線開頭;除自由表中字段名、索引的TAG標識名最多只能10個字符外,其他的命名可使用1——128個字符;避免使用VisualFoxPro的保留字(保留字是指VFP語言使用的關鍵字,如CREATE命令中的CREATE就是一個系統保留字);文件名的命名應遵循操作系統的約定。1/9/202392科技學院王廣命名規則在VisualFoxPro系統中,將表示、存儲數據內存變量內存變量是用戶通過命令或程序臨時定義的變量,內存變量獨立于數據庫以外,它通常用于存放程序運行過程中所需要的原始數據、中間結果以及最終結果。內存變量的數據類型由它所保存的數據的類型決定,內存變量的數據類型有字符型、數值型、貨幣型、邏輯型、日期型和日期時間型,可以把不同類型的數據賦值給同一個內存變量。內存變量建立后存儲在內存中,當用戶退出VisualFoxPro時,內存變量將自動消失。需要時可把內存變量保存在文件中。需要注意的是:當內存變量與字段同名時,若要使用內存變量,那么要在引用的內存變量名稱之前添加“M.”。1/9/202393科技學院王廣內存變量內存變量是用戶通過命令或程序臨時定義的變量,內存變量內存變量賦值命令建立內存變量就是給內存變量賦值。內存變量賦值既可定義一個新的內存變量,也可改變已有內存變量的值或數據類型。命令格式1:<內存變量名>=<表達式>命令格式2:store<表達式>to<內存變量名表>功能:將<表達式>的值賦給內存變量。說明:格式1只能給一個變量賦值;格式2可以給一批變量賦相同的值,各變量名之間必須用逗號分隔;可對內存變量重新賦值來改變其值和類型。1/9/202394科技學院王廣內存變量賦值命令建立內存變量就是給內存變量賦值。內存變量賦值1.直接為內存變量賦值使用“=”可以直接為內存變量賦值。【例】b1=3&&將b1賦值3; b2=b1+2&&將b1加2后的值賦給b2,此時b2等于5;b2=b2+3&&將b2加3后的值再賦給b2,此時b2等于8。說明:一個變量的值可以不斷變化,最終結果是它最后一次的賦值。1/9/202395科技學院王廣1.直接為內存變量賦值1/8/202395科技學院王廣2.使用STORE命令為內存變量賦值命令格式STOREeExpressionTOVarNameList|ArrayNameList命令說明(1)eExpression參數是一個表達式。該表達式可以由常量、變量、函數和運算符組成。該命令將表達式的值賦予內存變量或數組變量。(2)VarNameList參數是內存變量列表。內存變量列表中的內存變量應用逗號分隔。該命令可以同時為多個內存變量賦值。(3)ArrayNameList參數是數組變量列表。數組變量列表中的數組變量應用逗號分隔。(4)該命令可以同時為多個內存變量或數組變量賦值。【例】store3*4toa1,a2?a1?a2&&此時a1,a2的值都是121/9/202396科技學院王廣2.使用STORE命令為內存變量賦值【例】1/8/20239顯示或打印內存變量可以使用DISPLAYMEMORY命令或LISTMEMORY命令來查看已定義的變量。命令格式命令格式:list|displaymemory[like<通配符>][toprint|tofile<文件名>]DISPLAYMEMORY或LISTMEMORY功能:顯示或打印當前已定義的內存變量名、作用范圍、類型和值。。1/9/202397科技學院王廣顯示或打印內存變量可以使用DISPLAYMEMORY命令說明:(1)LIKE選項子句可以使用通配符來代替變量名的一部分,以顯示與通配符相符合的變量。有兩種通配符:“?”代表任意一個字符,“*”代表任意多個字符。(2)LIST和DISPLAY的區別是:前者連續顯示,后者分屏顯示。(3)TOFILE<文件名>子句功能是將內存變量有關信息送至一個文本文件。TOPRINTER則是送至打印機打印。例:定義并顯示內存變量:STORE"dggaf"TOa1a2={^2004-04-25}c=.t.LISTMEMOLIKEa?1/9/202398科技學院王廣說明:1/8/202398科技學院王廣建立內存變量文件VisualFoxPro提供相應命令,可用文件形式將某些內存變量保存起來,以便重復使用。命令格式:SAVETO<變量文件名>[ALLLIKE<通配符>|ALLEXCEPT<通配符>]ALLLIKE<通配符>:只保存符合通配符條件的所有變量;ALLEXCEPT<通配符>:只保存不符合通配符條件的所有變量。命令功能:將指定變量的信息保存到指定的變量文件(*.MEM)中。1/9/202399科技學院王廣建立內存變量文件VisualFoxPro提供相應命令,可用示例:SAVETOAASAVETOMMALLLIKEX*SAVETOBBALLEXCEPT?Y1/9/2023100科技學院王廣示例:1/8/2023100科技學院王廣內存變量文件的調入需要保存在文件中的變量信息時,必須先恢復到內存后方可使用。RESTORE將指定變量文件(*.MEM)中變量信息恢復到內存中。格式:RESTOREFROM<變量文件名>[ADDITIVE]ADDITIVE:省略此項,清除內存所有變量后再恢復文件中變量的信息;加選此項,將變量文件中的變量信息追加到內存現有變量信息中。示例:RESTOREFROMMMRESTOREFROMBBADDITIVE1/9/2023101科技學院王廣內存變量文件的調入需要保存在文件中的變量信息時,必須先恢復到釋放內存變量VisualFoxPro系統對定義內存變量的數量是有限制的,應及時清理,盡量減少內存的占用,定義其他變量。命令格式:RELEASE<變量表>RELEASEALL[LIKE<通配符>|EXCEPT<通配符>]RELEASE<變量表>該命令用于釋放指定的內存變量。releaseall該命令用于釋放全部變量。1/9/2023102科技學院王廣釋放內存變量VisualFoxPro系統對定義內存變量的數釋放全部變量例releasea1,a2&&釋放變量a1,a2releasealllikea*&&釋放以字母a開頭的變量
CLEARMEMORY命令該命令用于釋放全部變量。命令格式clearmemory1/9/2023103科技學院王廣釋放全部變量例1/8/2023103科技學院王廣表達式的顯示輸出?與??命令對表達式求值,并將結果顯示在主窗體上或通過打印機打印出來。?|??<表達式表>[AT<列號>]?表達式換行顯示表達式的運算(運行)結果,省略“表達式”內容,則顯示一個空行。??表達式在之前顯示的內容后顯示表達式的運算(運行)結果,即不換行連續顯示。如果SETPRINTER狀態為ON,表達式的結果顯示在VisualFoxPro主窗體(或用戶定義的當前活動窗體)上并直接在打印機上打印;如果SETPRINTER狀態為ON并且SETCONSOLE狀態為OFF,表達式的結果僅直接在打印機上打印。1/9/2023104科技學院王廣表達式的顯示輸出?與??命令1/8/2023104科技學?|??命令語法?|??Expression1
[PICTUREcFormatCodes]|[FUNCTIONcFormatCodes]|[VnWidth]
[ATnColumn]
[FONTcFontName[,nFontSize][STYLEcFontStyle|Expression2]]
[,Expression3]...示例?DATE()FONT'COURIER',16STYLE'BI'at10?15*(10+10)?'Welcometo'PICTURE'@!'??'VisualFoxPro'?'ThisisanexampleofhowtheVfunctioncodeworks.';FUNCTION'V10'
???命令對表達式求值,并將結果直接通過打印機打印出來。1/9/2023105科技學院王廣?|??命令語法1/8/2023105科技學院如果變量沒有定義,則使用?會提示“找不到變量‘’”如1/9/2023106科技學院王廣如果變量沒有定義,則使用?會提示“找不到變量‘’”1/8/2字段變量字段變量是用戶在定義表結構時所定義的字段名,它是一種多值變量。字段變量的值隨著數據表中記錄的不同而改變。當用字段名作變量時,它的當前值就是數據表中當前記錄該字段名所對應的值。1/9/2023107科技學院王廣字段變量字段變量是用戶在定義表結構時所定義的字段名,它是一種例:打開“學生情況表”表文件,顯示第2條記錄和第5條記錄的學號和姓名字段值,結果如下圖所示。1/9/2023108科技學院王廣例:打開“學生情況表”表文件,顯示第2條記錄和第5條記錄的學數組變量數組變量是一種特殊的內存變量。它是指一組有序的數據的集合,數組中的各元素稱為數組元素。每個數組元素都可以通過一個數值下標被引用,相當于一個內存變量。數組變量是結構化的變量,是一組具有相同名稱、以下標相互區分的有序內存變量。一個數組通常都包含多個數據元素。VisualFoxPro系統中只允許使用一維數組(相當于數列)和二維數組(相當于行列式或矩陣)。數組必須先定義后使用。1/9/2023109科技學院王廣數組變量數組變量是一種特殊的內存變量。它是指一組有序的數據的數組的定義數組必須先定義后使用,定義數組是向系統申請數組元素在內存中的存儲空間。命令格式:DIMENSION|DECLARE<數組名1>(<數值表達式1>[,<數值表達式2>])[,<數組名2>(<數值表達式3>[,<數值表達式4>])…]命令功能:定義指定的各個數組。示例:dimensionAB(3),C[2,3]1/9/2023110科技學院王廣數組的定義數組必須先定義后使用,定義數組是向系統申請數組元素<數值表達式>為數組下標,對一維數組來說,指的是數組元素的個數;對二維數組來說,指的是數組的最大行號和最大列號。系統規定行標號和列標號參數的下界為1。數組的下標允許使用圓括號或方括號括起來。在同一個數組中,不同的數組元素數據類型可以不同。數組一旦被定義之后,該數組的每個元素的初值為邏輯假值,可以使用有關的命令給數組元素賦值。數組元素可以包含各種類型的數據,第一次定義時被賦值為.F.。1/9/2023111科技學院王廣<數值表達式>為數組下標,對一維數組來說,指的是數組元素的個數組中各有序變量(數據元素)組成數組的成員,稱為數組元素。數組元素實質上是一個內存變量,也稱數組變量,它們具有相同變量名即數組名,彼此以下標區分;數組元素的名稱(變量名)用數組名加下標構成。如AA(1),BB(2,3)分別表示一維數組AA第1個元素,二維數組BB中第2行第3列的元素;一維數組的元素只有一個下標,二維數組的元素有兩個以逗號分隔的下標;下標必須是非負數值,可以是常量、變量、函數或表達式,下標值會自動取整。如AA(1.5),AA(nA1),AA(2+10/3)等;數組元素的數據類型決定于最后賦值的數據類型;不同數組元素的數據類型可以不同;數組元素與普通內存變量一樣操作,可以賦值和引用。1/9/2023112科技學院王廣數組中各有序變量(數據元素)組成數組的成員,稱為數組元素。數定義數組的命令DECLAREArrayName1(nRows1[,nColumns1])[,ArrayName2(nRows2[,nColumns2])]...命令功能該命令用于定義一維或二維數組。命令說明DIMENSION命令和DECLARE命令都可以一次定義多個數組。1/9/2023113科技學院王廣定義數組的命令DECLAREArrayName1(nRo數組元素的賦值與普通內存變量一樣,可以通過STORE命令或“=”來實現。示例:給二維數組X和一維數組Y進行賦值。DIMENSIONX(3,4),Y(3)STORE5TOXY(1)=325Y(2)=“ABC”Y(3)=.T.1/9/2023114科技學院王廣數組元素的賦值與普通內存變量一樣,可以通過STORE命令或“【例2】定義數組,并給數組賦值。DECLAREY(3),X(2,2) Y=123 X(1,1)=345 X(1,2)="abc" X(2,1)={^2003-03-25} X(4)=.T. ?Y(1),Y(2),Y(3),X(1),X(2),X(3),X(4) 1/9/2023115科技學院王廣【例2】定義數組,并給數組賦值。1/8/2023115科技學數組的重定義數組的重定義:使用DECLARE或DIMENSION命令對已定義好的數組的尺寸和維數進行改變,即:將一維數組變為二維數組或將二維數組變為一維數組,并且可以改變數組元素的個數,同時將原數組的數據自動復制到重定義的同名數組(新數組)中。數據的復制原則:把原數組和新數組都看作是一維的;將原數組中的數據從序號1開始順序地復制到新數組對應的數組元素中去;若新數組的元素個數多于原數組的元素個數,則新增加的數組元素取值為.F.,反之,只取原數組中的前若干個值。數組下標的排列規則:數組從下標1開始排列,二維數組的元素排列是先按行排,后按列排。示例:己定義了數組A(6)與數組B(2,3),它們對應的下標排列如下:A(6)數組:A(1),A(2),A(3),A(4),A(5),A(6)B(2,3)數組:B(1,1),B(1,2),B(1,3),B(2,1),B(2,2),B(2,3)1/9/2023116科技學院王廣數組的重定義數組的重定義:使用DECLARE或DIMENSI數組的釋放數組的釋放:將數組從內存中刪除,釋放其所占的內存空間,就是數組的釋放。命令格式:格式1:CLEARALL功能:關閉所有文件,同時清除所有的內存變量、數組等,但不清除系統內存變量。格式2:CLEARMEMORY功能:清除所有內存中的變量和數組,但不清除系統內存變量。格式3:RELEASE<內存變量名表或數組名表>或RELEASEALL[LIKE<通配符>/EXCEPT<通配符>]功能:清除指定的內存變量或數組,但不清除系統內存變量。1/9/2023117科技學院王廣數組的釋放數組的釋放:將數組從內存中刪除,釋放其所占的內存空系統變量系統變量是VisualFoxPro建立并維護的內存變量。這些變量的名稱由系統定義,并且以下劃線“_”開頭。系統變量是VisualFoxPro系統特有的內存變量,它由VisualFoxPro系統定義、維護。系統變量有很多,其變量名均以下劃線“_”開始,因此在定義內存變量和數組變量名時,不要以下劃線開始,以免與系統變量名沖突。系統變量設置、保存了很多系統的狀態、特性,了解、熟悉并且充分地運用系統變量,會給數據庫系統的操作、管理帶來很多方便,特別是開發應用程序時更為突出,學習時可對此有所關注。1/9/2023118科技學院王廣系統變量系統變量是VisualFoxPro建立并維護的內存系統內存變量是指VFP系統定義的一批變量,它門都以下劃“_”開頭,分別用于控制外部設備、屏幕輸出格式或處理有關計算器、日歷、剪貼板等方面的信息。
【例】在命令窗口中輸入DISPLAYMEMORY命令,以滿屏幕暫停的方式顯示當前系統的內存變量,結果如圖所示。1/9/2023119科技學院王廣系統內存變量是指VFP系統定義的一批變量,它門都表達式數值運算符及數值表達式字符表達式日期表達式關系表達式邏輯表達式1/9/2023120科技學院王廣表達式數值運算符及數值表達式1/8/2023120科技學院在一個表達式中可能包含多個由不同運算符連接起來的、具有不同數據類型的數據對象,但任何運算符兩側的數據對象必須具有相同數據類型,否則運算將會出錯;由于表達式中有多種運算,不同的運算順序可能得出不同結果,甚至出現運算錯誤,因此當表達式中包含多種運算時,必須按一定順序施行相應運算,才能保證運算的合理性和結果的正確性、惟一性。用戶也可以通過給表達式加圓括號的方式,改變其默認運算順序。在VisualFoxPro系統中,各類運算的優先順序如下:
圓括號>算術和日期運算>字符串運算>關系運算>邏輯運算同一類運算符也有一定的運算優先順序,這在各類表達式中分別介紹。如果有多個同一級別的運算,則按在表達式中出現的先后順序進行運算。1/9/2023121科技學院王廣在一個表達式中可能包含多個由不同運算符連接起來的數值表達式數值表達式是由算術運算符將常量、變量、字段或函數連接起來的式子,其結果仍為數值型數據。例:?(3*4+SQRT(25)/5)*4&&結果等于52?(7**2-1/5)*6 &&結果等于292.8
1/9/2023122科技學院王廣數值表達式數值表達式是由算術運算符將常量、變量
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年企業管理理論知識考試試題及答案
- 清華大學信息部java面試題及答案
- 環境工程原理與技術研究試題
- 設備故障預防技術試題及答案
- 西方政治制度中的女性角色試題及答案
- 軟件設計師新手必看試題及答案
- 西方國家的環保政策與國際合作試題及答案
- 客戶參與在項目管理中的重要性試題及答案
- 機電工程的職業生涯管理策略試題及答案
- 軟件設計師考試工作坊分享試題及答案
- 全套教學課件《工程倫理學》
- 擔保合同范本
- 中職英語1 基礎模塊 Unit 3 shopping
- 廣東省廣州三校2023-2024學年高二下學期期末考試+政治試卷(含答案)
- 藥政與藥品生產質量管理智慧樹知到答案2024年青島科技大學
- 《動量定理》參考課件 04
- 人教版高中數學A版 必修第1冊《第二章 一元二次函數、方程和不等式》大單元整體教學設計
- 臺球室用工合同范本
- 廣東省珠海市香洲區2023-2024學年四年級下學期期末數學試卷
- 教科版六年級下冊科學期末測試卷附完整答案(各地真題)
- 深圳市羅湖區社區工作者考試題庫附答案
評論
0/150
提交評論