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ù)源的連接
退出程序
一、服務(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ù)源的連接
退出程序