VFP中用SPT訪問SQLSERVER

字號(hào):

VFP因它簡(jiǎn)單易學(xué),可快速建立應(yīng)用軟件而深受廣大程序員喜愛,但其數(shù)據(jù)庫(kù)系統(tǒng)不安全也是令廣大用戶非常頭痛。隨著MS SQL SERVER數(shù)據(jù)庫(kù)系統(tǒng)的推廣應(yīng)用,其強(qiáng)大的安全性能普遍受到好評(píng)。筆者在長(zhǎng)期的編程實(shí)踐中發(fā)現(xiàn)利用VFP的SQL PASS-THROUGH(SPT) 技術(shù)結(jié)合MS SQL SERVER 數(shù)據(jù)庫(kù)系統(tǒng),也能象VB、DELPHI、POWERBUILDER一樣輕松開發(fā)出優(yōu)秀的客戶/服務(wù)器(C/S)應(yīng)用軟件?,F(xiàn)通過編寫一個(gè)簡(jiǎn)單的通信錄例子和廣大VFP愛好者共同探討。
    一、服務(wù)器端MS SQL SERVER數(shù)據(jù)庫(kù)設(shè)計(jì)
    1、在MS SQL SERVER中建立名為“SFXT”的數(shù)據(jù)庫(kù)。
    2、在SFXT數(shù)據(jù)庫(kù)中建立名為“通信錄”的表,結(jié)構(gòu)如下:
    列名(字段名) 數(shù)據(jù)類型 長(zhǎng)度
    姓名 CHAR 8
    生日 DATETIME 8
    電話 CHAR 11
    EMAIL CHAR 30
    并將姓名設(shè)置為主鍵
    3、在SFXT數(shù)據(jù)庫(kù)中建立查詢出所有記錄的存儲(chǔ)過程 SP_SEARCHALL
    CREATE PROCEDURE [SP_SEARCHALL] AS
    SELECT * FROM 通信錄 ORDER BY 姓名
    RETURN
    4、在SFXT數(shù)據(jù)庫(kù)中建立插入新記錄的存儲(chǔ)過程 SP_INSERTDATA
    CREATE PROCEDURE [SP_INSERTDATA]
    @NAME [CHAR] (10),
    @BIRTHDAY [DATETIME],
    @TELEPHONE [CHAR] (11),
    @EMAIL [CHAR] (30)
    AS
    INSERT INTO 通信錄(姓名,生日,電話,EMAIL) valueS (@NAME,@BIRTHDAY,@TELEPHONE,@EMAIL)
    RETURN
    二、客戶端VFP的SQL PASS-THROUGH技術(shù)設(shè)計(jì)
    1、建立VFP表單界面,按鈕內(nèi)容如下
    建立ODBC數(shù)據(jù)源
    建立連接方式1
    建立連接方式2
    活動(dòng)連接屬性設(shè)置
    執(zhí)行存儲(chǔ)過程查詢數(shù)據(jù)
    執(zhí)行SQL語(yǔ)句查詢數(shù)據(jù)
    向存儲(chǔ)過程傳替參數(shù)插入新記錄
    設(shè)置當(dāng)前表的屬性修改數(shù)據(jù)
    斷開指向數(shù)據(jù)源的連接
    退出程序