国产午夜成人免费看片无遮挡_日本免费xxxx色视频_免费人成网上在线观看_黄网址在线永久免费观看

當前位置:雨林木風下載站 > 技術開發教程 > 詳細頁面

用VisualFoxpro開發主從結構數據庫系統

用VisualFoxpro開發主從結構數據庫系統

更新時間:2022-05-09 文章作者:未知 信息來源:網絡 閱讀次數:

孫向海 方旭升

  目前流行的數據庫開發平臺很多,如DELPHI、VB、PB等,有關用它們如何開發基于C/S 模式的應用系統的書籍、文章也較多,但是卻很少見到關于用Visual Foxpro (VFP)開發C/S 結構的文章,即使有也只是泛泛而談,講的不具體,讀者看了之后,仍然不知道如何去開發。還有好多人對VFP的認識還是停留在FOXBASE和FOXPRO的基礎上,經常有人問,"用VFP能開發C/S結構的系統嗎?",于是我一次又一次的充當了VFP的解說員。其實用VFP開發基于C/S 模式的系統是可以的,而且原來所熟悉的各種技術在開發主從結構時仍然完全適用,而我國有許多MIS系統開發人員都比較熟悉FOX系列的軟件,因此在此基礎上掌握VFP開發C/S結構的MIS系統,對于這些人來講加快了開發進程,延續了知識的生命周期。因此我想把自己用VFP開發C/S 系統中的方法和經驗寫出來,好讓那些對VFP不太了解或者沒有用它開發過C/S 結構的讀者對VFP有重新的認識。

  一. 建立數據庫、建立ODBC 數據源

  主從結構最大的優點就是將工作合理分配于服務器與工作站以便讓它們同時發揮所長,主從結構包括三個重要的部分-網絡操作系統、數據庫服務器及前端應用程序。我們可以采用Visual FoxPro+SQL Server 7.0 + Windows NT Server 的組合方式。我們首先需在SQL Server 上建立所需的數據庫如:Ningguo ,并創建所需要的表,如maintable等。在SQL Server 上的數據庫建完之后,我們可以為剛才創建的數據庫創建一個用戶如:newguest,這樣我們就可以進行下一步操作。

  在前臺的工作站上,操作系統采用Window 98/95 即可,在工作站建立連接到SQL Server的ODBC 數據來源(Data Source)。 我們新建了一個數據源first,連接到 SQL Server 上的Ningguo 數據庫。

  二.建立和數據庫相連的連接

  下面我們就進入與Visual Foxpro 相關的部分。在以 Visual Foxpro 所開發的主從結構中,遠程視圖(Remote View)扮演著關鍵性的角色。遠程視圖使得程序設計師能夠將現有的技術直接應用于主從結構系統的開發上,而無須增加太多的負擔。當我們想要在 Visual Foxpro 中存取其他數據庫系統的數據紀錄時,便必須借助于遠程視圖。在建立一個遠程視圖之前,必須在數據庫中建立一個連接(Connection),它記錄了登入SQL Server 的相關信息并定義連接通道的一些設定信息。在數據庫設計器中新建一個連接,  分別在數據源、用戶標識、密碼、數據庫所對應的輸入框中輸入如前文所述的名稱,然后驗證連接即可,當然也可以用連接串連接,如:dsn=first;uid=newguest;pwd=123;database=ningguo,或許在某些情況下,我們在應用系統執行期間以程序控制方式更改連接的相關設定,我們就可以用DBSETPROP()函數,比如我們要更改名為connect1 的連接串,可用如下的命令敘述:

  OPEN DATABASE test

  dbsetprop("connect1","connection","connectstring",;

  "dsn=first;uid=newguest;pwd=123;database=ningguo")

  三.建立遠程視圖

  在連接成功的情況下,我們就可以建立遠程視圖。我們既可以在數據庫設計器中用視圖向導建立視圖,也可以用命令來建立視圖。下面以向導為例來進行說明,在向導中我們可以使用數據源或者連接來創建視圖,一般而言,讓遠程視圖透過已定義的連接來連接到所需的數據來源較好,因為連接本身就包含較完整的連接定義信息,而用數據源則每次使用遠程視圖時便會出現 SQL Server Login 對話框,顯然這是用戶所不希望看到的。接著選擇視圖所對應的SQL Server 中的來源表即可。

  我們就視圖所需要的字段、聯接條件、篩選條件、排序、分組、更新條件應分別進行設置,以滿足我們的需要,要提到的是前后端的數據類型對應的問題,Visual Foxpro 中的數據類型與 SQL Server 中的數據類型不盡相同,不過前后端的數據類型有一固定的關系。比如,某一個字段在SQL Server 上的數據類型是 money ,而在遠程視圖中此字段的數據類型將是貨幣值類型,又例如,某一個字段在SQL Server 上的數據類型是 text ,而在遠程視圖之中此字段的數據類型將是備注型,我們往往需要手動去調節對應的字段類型,例如,所有的 SQL Server 上的datetime 類型到了遠程視圖中都要變成 date 型。我們可以在相應的頁面來確定聯接關系、指定過濾條件、指定排序依據,特別要注意的是在"更新頁面"欄,如果我們想要建立一個可更新的視圖,必須選中"發送SQL更新"欄,這樣針對視圖所作的任何變動,會主動反映到后端的SQL Server 中去,你就可以直接使用所熟悉的Visual Foxpro 來更新后端數據。另外,我們指定鍵值欄、可更新字段、更新沖突的檢查方式以及后端的 SQL Server 如何執行更新操作,視圖的建立就完成了。

  遠程視圖一旦建立完成,我們就可以利用它來顯示與更新數據。由于遠程視圖在外觀與使用上皆與表大同小異,因此即使其來源數據實際上是位于SQL Server 中,我們無須有任何顧慮,過去替 Visual Foxpro 本身的數據建立平行輸出/入界面、報表及標簽的方法完全適用于遠程視圖。我們可以在表單設計工具、報表設計工具與標簽設計工具中,將遠程視圖加至表單、報表或標簽的數據環境組件中,并快速建立出數據源為遠程視圖或其某字段的控制項。但是在實際應用中,我們往往會遇到這樣的情況,如符合條件的數據紀錄很多,或者經常要使用離線方式的系統,我們除了簡單的使用遠程視圖之外,還必須靈活的運用"有條件的遠程視圖"和離線式視圖(Off-line View),盡量減少服務器端的數據下載量,減輕網絡的負荷,一些不常更新的數據甚至可以以DBF的形式直接放置在客戶端,提高整個系統的運行效率。

  四.SQL Pass-Through (SPT) 技術的運用

  要使一個主從結構系統趨于完善,除了用遠程視圖來構筑主從結構的主體,還必須輔以SQL Pass-Through 技術。所謂 SQL Pass-Through ,意指我們可以將任何符合 SQL Server 語法的命令敘述從前端透過連接通道送至后端的 SQL Server 來執行,與SQL Server 進行其他直接有效的溝通。利用 SQL Pass-Through 我們還可以直接去執行儲存在SQL Server 上的儲存式程序(Stored Procedure),和系統儲存式程序(System Stored Procedure),比方說,我們可以從前端去執行SQL Server的系統儲存式程序sp_addlogin ,來要求加入一個使用者帳號。一般而言,SPT函數的使用流程如下所示:

  (1) 首先使用SQLCONNECT()或SQLSTRINGCONNECT() 函數來連接值所需的數據源。

  (2) 成功的連接到SQL Server 之后,即可以透過連接通道進行所需的各項處理。比如,我

  們可以使用SQLEXEC()函數將SQL命令送至SQL Server執行。

  (3) 完成所有的操作后,應用SQLDISCONNECT()函數切斷與數據源的連接。下面我們就

  舉一個典型的運用SQL Pass-Through的例子:

  SET TALK OFF

  CLEAR ALL

  CLOSE ALL

  SQLSETPROP(0,"DispLogin",3) &&登錄失敗時不顯示ODBC登錄對話框

  nConnectHandle=SQLSTRINGCONNECT("dsn=first;uid=newguest;pwd=123;database=ningguo")

  IF nConnectHandle<0

  MessageBox("無法與數據庫連接",0+48,"異常情況")

  ELSE

  MessageBox("連接成功",0+48,"提示信息")

  SQLEXEC(nConnectHandle,"Select * from maintable")

  Browse

  Use in sqlresult

  ………..&&其他操作

  SQLDISCONNECT(nConnectHandle) &&切斷連接

  ENDIF

  通過這樣簡單有效的代碼,我們就能對數據庫進行有效的操作,以確保數據的完整性和安全性。在此列出所有的SQL Pass-Through 函數供大家參考:

  (1) 連接建立與切斷 SQLCONNECT() SQLSTRINGCONNECT() SQLDISCONNECT()

  (2) SQL命令敘述的執行與控制 SQLCANCEL() SQLEXEC() SQLMORERESULTS() SQLPREPARE() SQLCOMMIT() SQLROLLBACK()

  (3) 數據來源信息 SQLCOLUMNS() SQLTABLES()

  (4) 存取連接通道的屬性 SQLGETPROP() SQLSETPROP()

  在用SQL Pass-Through時,程序設計師能夠擁有較高的主導權與控制權,因此若能夠將遠程視圖和SQL Pass-Through 技術緊密的結合起來,互補有無,我們的主從系統就可以無所不能了。

  五.結束語

  可以說,Visual Foxpro 是一個相當不錯的開發基于C/S結構的數據庫應用系統的前端軟件,在Internet 廣為流傳的今天,最新一代的系統結構早就已發展至N-tier 結構,亦即我們所說的多階層結構。N-tier 結構其實是從主從結構為基礎所衍生而來的,我們甚至可以說主從結構就是2-tier 結構。因此,只有徹底學會主從結構,并了解Visual Foxpro 在主從結構中所扮演的角色,才能在將來的競爭中立于不敗之地。

  參考文獻:

  (1)Visual Foxpro6.x 中文版程序設計 -應用實務篇 章立民 中國鐵道出版社 1999.10

  (2)中文Visual Foxpro6.0 高級編程 合力工作室 清華大學出版社 1999.7

溫馨提示:喜歡本站的話,請收藏一下本站!

本類教程下載

系統下載排行

国产午夜成人免费看片无遮挡_日本免费xxxx色视频_免费人成网上在线观看_黄网址在线永久免费观看

  • <label id="pxtpz"><meter id="pxtpz"></meter></label>
      1. <span id="pxtpz"><optgroup id="pxtpz"></optgroup></span>

        国产成人精品免费网站| 色综合久久中文字幕| 麻豆国产精品视频| 日韩一区二区高清| 久久 天天综合| 久久久综合激的五月天| 成人一道本在线| 一区二区三区免费网站| 6080日韩午夜伦伦午夜伦| 精品无码三级在线观看视频| 国产精品嫩草99a| 欧美三级日韩三级| 久久99蜜桃精品| 亚洲欧洲三级电影| 欧美酷刑日本凌虐凌虐| 国产福利91精品一区二区三区| 亚洲视频香蕉人妖| 91.xcao| 成人黄色在线网站| 水野朝阳av一区二区三区| 欧美精彩视频一区二区三区| 欧美另类高清zo欧美| 懂色av一区二区三区免费观看| 亚洲综合男人的天堂| 久久久91精品国产一区二区三区| 色婷婷精品久久二区二区蜜臂av| 激情成人午夜视频| 亚洲成人在线观看视频| 国产精品对白交换视频| 精品福利一二区| 欧美精品一级二级| 91麻豆自制传媒国产之光| 精品一区二区在线看| 亚洲成国产人片在线观看| 国产精品久久久久7777按摩| 欧美一区二区三区婷婷月色| 色成人在线视频| 成人免费电影视频| 国产一区二区精品久久99| 日本伊人色综合网| 一区二区三区精品视频在线| 成人网页在线观看| 欧美另类高清zo欧美| 久久久美女艺术照精彩视频福利播放| 91麻豆6部合集magnet| 国产成+人+日韩+欧美+亚洲| 蜜桃av一区二区在线观看| 亚洲愉拍自拍另类高清精品| 国产精品天美传媒| 欧美国产日韩在线观看| 久久精品一区二区三区av| 欧美一区二区三区影视| 欧美日韩高清一区二区三区| 色视频欧美一区二区三区| 9久草视频在线视频精品| 国产一区999| 国精产品一区一区三区mba视频| 五月天中文字幕一区二区| 石原莉奈在线亚洲三区| 亚洲大片在线观看| 午夜一区二区三区在线观看| 一区二区三区成人| 一区二区不卡在线播放| 亚洲国产美国国产综合一区二区| 亚洲电影一区二区| 天天av天天翘天天综合网色鬼国产| 夜夜嗨av一区二区三区中文字幕 | 激情综合色综合久久综合| 麻豆91在线播放| 国产一区二区伦理片| 国产91丝袜在线播放| 不卡av电影在线播放| 91成人免费在线| 日韩三级伦理片妻子的秘密按摩| 2023国产精品视频| 中文字幕亚洲一区二区va在线| 亚洲精品国久久99热| 五月天亚洲精品| 国产资源在线一区| 91在线观看地址| 欧美巨大另类极品videosbest| 日韩午夜中文字幕| 中文字幕一区二区三区在线播放| 亚洲一区二区视频| 黄色日韩三级电影| 在线视频亚洲一区| 欧美精品一区二区久久久| 亚洲天堂久久久久久久| 日本午夜精品视频在线观看| 成人a免费在线看| 欧美一级二级三级蜜桃| 国产精品久久久久9999吃药| 日本不卡视频在线| 色欧美片视频在线观看| 日韩你懂的在线观看| 亚洲视频综合在线| 国产精品久久久久aaaa| 日本一区二区三区在线观看| 4438x成人网最大色成网站| 7777精品伊人久久久大香线蕉经典版下载 | 91色视频在线| 欧美一区二区观看视频| 国产精品视频免费| 美国av一区二区| eeuss国产一区二区三区| 欧美一级电影网站| 一区二区三区四区不卡在线 | 99热99精品| 久久久久久一级片| 五月开心婷婷久久| 一本一道久久a久久精品| 国产性做久久久久久| 色婷婷一区二区三区四区| 久久精品一二三| 91精品国产综合久久精品| 亚洲一区二区3| 国产一区视频在线看| 91精品国产91久久综合桃花| 亚洲男人天堂av| 成人性生交大片免费看视频在线| 欧美大片顶级少妇| 日韩高清在线观看| 在线视频欧美区| 亚洲视频一区在线观看| 成人听书哪个软件好| 国产欧美日韩卡一| 国产成人a级片| 久久综合中文字幕| 国产原创一区二区三区| 91精品在线免费| 日韩中文字幕不卡| 欧美三级电影精品| 亚洲成人一区二区在线观看| 色av成人天堂桃色av| 日韩欧美国产一区二区三区 | 亚洲蜜臀av乱码久久精品 | 国产制服丝袜一区| 欧美美女视频在线观看| 亚洲风情在线资源站| 欧美在线免费观看亚洲| 亚洲日本乱码在线观看| 99久久伊人网影院| 国产日韩精品视频一区| 成人av手机在线观看| 亚洲免费观看在线视频| 在线视频一区二区免费| 亚洲乱码中文字幕| 在线亚洲一区二区| 视频一区二区国产| 日韩一区二区在线播放| 国内不卡的二区三区中文字幕| 久久久久久久国产精品影院| 高清shemale亚洲人妖| 亚洲欧美二区三区| 91精品国产黑色紧身裤美女| 乱一区二区av| 国产免费成人在线视频| 成人av先锋影音| 亚洲一区二区三区激情| 欧美一区二区日韩一区二区| 国产风韵犹存在线视精品| 中文字幕在线观看一区| 欧美剧情片在线观看| 国产精选一区二区三区| 亚洲人快播电影网| 91超碰这里只有精品国产| 国产尤物一区二区在线| 一区二区在线观看不卡| 久久午夜国产精品| 欧日韩精品视频| 国内外精品视频| 亚洲国产精品一区二区久久 | 欧美精品在线观看播放| 国产在线精品免费| 亚洲在线中文字幕| 国产欧美一区二区在线| 欧美久久久影院| 91丨九色丨尤物| 国产福利91精品| 蜜桃av一区二区三区| 一区二区三区 在线观看视频| 国产午夜精品久久久久久免费视| 欧美三级资源在线| 99久久99久久免费精品蜜臀| 精品中文av资源站在线观看| 五月综合激情婷婷六月色窝| 成人免费一区二区三区视频 | 亚洲国产va精品久久久不卡综合| 久久精子c满五个校花| 欧美一激情一区二区三区| 色丁香久综合在线久综合在线观看| 韩国三级中文字幕hd久久精品| 亚洲福利视频一区二区| 亚洲男人天堂av网| 国产精品国产自产拍高清av王其| 精品日韩一区二区| 日韩一级视频免费观看在线| 欧美一区二区国产| 欧美日高清视频| 欧美日本一区二区在线观看|