欢迎来到天天文库
浏览记录
ID:40583570
大小:38.50 KB
页数:5页
时间:2019-08-04
《VFP中用SPT访问SQL Server数据库》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、VFP中用SPT访问SQLServer数据库VFP因他简单易学,可快速建立应用软件而深受广大程式员喜爱,但其数据库系统不安全也令广大用户很头痛。随着MSSQLServer数据库系统的推广应用,其强大的安全性能普遍受到好评。笔者在长期的编程实践中,发现利用VFP的SQLpass-through(SPT)技术结合MSSQLServer数据库系统,也能像VB、Delphi、PowerBuilder相同轻松研发出优秀的客户/服务器(C/S)应用软件。现通过编写一个简单的通信录例子和广大VFP爱好者一起探讨。 一、服务器端MSSQLServer数据库设计 1.在MSSQLServer中建立名
2、为“SFXT”的数据库。 2.在SFXT数据库中建立名为“通信录”的数据表,表结构如下: 列名(字段名) 数据类型 长度 姓名chr8 生日datetime8 电话chr11 emailchr30 并将姓名配置为主键。 3.在“SFXT”数据库中建立查询出任何记录的存储过程。SP_SearchAll CREATEPROCEDURE[SP_SearchAll] AS select*from通信录orderby姓名 return 4.在“SFXT”数据库中建立插入新记录的存储过程SP_InsertData。 CREATEPROCEDURE[SP_InsertDa
3、ta] @name[char](10), @birthday[datetime], @telephone[char](11), @email[char](30) AS insertinto通信录(姓名,生日,电话,email)values(@name,@birthday,@telephone,@email) return 二、客户端VFP的SQLpass-through技术设计 1.建立如(^15020603b^)的VFP表单界面。 2.建立名为“SFXT”的ODBC数据源连接MSSQLServer中的SFXT数据库。 可通过执行上面VFP表单的按钮“建立OBDC数据
4、源”来完成;或通过运行Windows控制面板中的“OBDC数据源”来完成。主要配置包括选择SQLServer驱动程式,通信协议,登录标识和密码等。 “建立OBDC数据源”按钮.CLICK事件: *函数说明SQLSTRINGCONNECT([cConnectString]) *省略连接字符串cConnectString时显示""SQL数据源""对话框,可选择或新建数据源 sqlstringconnect() 3.两种连接MSSQLServer数据源的方式。 使用现有数据源名称建立连接,“建立连接方式1”按钮.CLICK事件。 publicvodbc,vuser,vpwd,vco
5、nn vodbc='sfxt' &&连接SQLSERVER数据库ODBC数据源名称 vuser='sa' &&访问SQLSERVER数据库的登录用户名,sa为系统用户 vpwd='5213' &&用户登录密码,为sa系统用户配置的密码 vconn=SQLCONNECT(vodbc,vuser,vpwd) ifvconn>0 messagebox('连接成功!',,'ODBC数据源') else messagebox('连接失败!',,'ODBC数据源') endif 使用连接字符串建立数据源连接,“建立连接方式2”按钮.CLICK事件。 pu
6、blicvconn vconn=SQLSTRINGCONNECT('dsn=sfxt:uid=sa:pwd=5213') ifvconn>0 messagebox('连接成功!',,'ODBC数据源') else messagebox('连接失败!',,'ODBC数据源') endif 4.数据源连接的主要参数配置,“活动连接属性配置”按钮.CLICK事件。 *注:用函数sqlgetprop()可返回配置的参数值 sqlsetprop(vconn,""asynchronous"",.f.)&&取假值时为结果集同步返回:取真值时为异步返回 sqlsetprop(vconn
7、,""ConnectTimeOut"",15)&&连接超时等待秒数配置,可取值0至600 sqlsetprop(vconn,""IdleTimeout"",0) &&空闲超时间隔秒数,取值0为无限期超时等待 sqlsetprop(vconn,""Transactions"",1) &&取值1时为自动处理远程事务:取值2时为手工处理 5.“执行存储过程查询数据”按钮.CLICK事件。 *函数说明SQ
此文档下载收益归作者所有