资源描述:
《vfp中用spt访问sql server数据库--》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、VFP中用SPT访问SQLServer数据库>> VFP因它简单易学,可快速建立应用软件而深受广大程序员喜爱,但其数据库系统不安全也令广大用户非常头痛。随着MSSQLServer数据库系统的推广应用,其强大的安全性能普遍受到好评。笔者在长期的编程实践中,发现利用VFP的SQLpass-through(SPT)技术结合MSSQLServer数据库系统,也能像VB、Delphi、Poe8 chr11 emailchr30 并将姓名设置为主键。 3.在SFXT数据库中建立查询出所有记录的存储过
2、程。SP_SearchAll CREATEPROCEDURE[SP_SearchAll] AS select*from通信录orderby姓名 return 4.在SFXT数据库中建立插入新记录的存储过程SP_InsertData。 CREATEPROCEDURE[SP_InsertData] name[char](10), birthday[datetime], telephone 可通过执行上面VFP表单的按钮建立OBDC数据源来完成;或者通过运行p;连接SQLSERVER数
3、据库ODBC数据源名称 vuser='sa' 访问SQLSERVER数据库的登录用户名,sa为系统用户 vpp;用户登录密码,为sa系统用户设置的密码 vconn=SQLCONNECT(vodbc,vuser,vpessagebox('连接成功!',,'ODBC数据源') else messagebox('连接失败!',,'ODBC数据源') endif 使用连接字符串建立数据源连接,建
4、立连接方式2按钮.CLICK事件。 publicvconn vconn=SQLSTRINGCONNECT('dsn=sfxt:uid=sa:pessagebox('连接成功!',,'ODBC数据源') else messagebox('连接失败!',,'ODBC数据源') endif 4.数据源连接的主要参数设置,活动连接属性设置按钮.CLICK事件。 *注:用函数sqlgetprop()可返回设置的参数值 sq
5、lsetprop(vconn,asynchronous,.f.)取假值时为结果集同步返回:取真值时为异步返回 sqlsetprop(vconn,ConnectTimeOut,15)连接超时等待秒数设置,可取值0至600 sqlsetprop(vconn,IdleTimeout,0) 空闲超时间隔秒数,取值0为无限期超时等待 sqlsetprop(vconn,Transactions,1) 取值1时为自动处理远程事务:取值2时为手工处理 5.执行存储过程查询数据按钮.C123
6、下一页>>>>这篇文章来自..,。LICK事件。 *函数说明SQLEXEC(nConnectionHandle,[cSQLmand,[CursorName]]) *nConnectionHandle 当前数据源活动连接句柄 *cSQLmand 执行SQLSERVER存储过程的SQL语句表达式 *CursorName 返回执行结果临时表的名称 sqlexec(vconn,executeSP_SearchAll,我的通信录) broand,[CursorName]]) *nCon
7、nectionHandle 当前数据源活动连接句柄 *cSQLmand 需发送SQL语句表达式 *CursorName 返回执行结果临时表的名称 SQLEXEC(vconn,'SELECT*FROM通信录','我的通信录') broe,vbirthday,vtelephone,vemail,vsql *随机产生新记录举例 vname='姓名'+sys(3) 姓名 vbirthday=dtoc(date()-i
8、nt(rand()*10000)) 生日 vtelephone=sys(3) vemail=sys(3)+'hotmail.' 电子邮箱 *将传递到存储过程的参数转换成字符串,并加引号形成SQL语句。 vsql=executeSP_InsertData+'+vname+','+vbirthday+','+vtelephone+','+vemail+'