*** 要得到SQL SERVER上某个表的结构,有两种办法,一是运行SQL SERVER自带的系统存储过程。一是运行一个Select命令。
比如要从SQL SERVER得到EMP表的结构
lnReturn=SQLEXEC(连接句柄,"Select Top 0 * From Emp","TmpEmp")
返回的结果都是临时表,是只读的,要想变成可读写的,需要做点小变化:
Select 0
Use DBF("TmpEmp") Again Alias Emp
Use In TmpEmp
现在得到的EMP临时表就是可读写的了。
*注 "Select Top 0 From Emp" 命令在VFP里是错误命令,但SQL SERVER里可以执行.
SPT和使用视图相比,优点是每一步你都清楚自己在做什么,知道为什么命令会出错。缺点是你需要多写命令,多了解SQL SERVER的语法。
***************
谈谈VFP和SQL SERVER搭配做C/S系统 (五) --从VFP控制SQL SERVER事务处理和加锁
**建立与SQL SERVER的连接
lnHandle=SQLConnect("ODBC数据源","用户名","密码")
If lnHandle>0
&& 设置成手工事务处理模式,由代码来控制
= SQLSETPROP(lnSQL_Hand, ’Transactions’, 2)
**下面的命令从EMPPAY里选取记录,并给该表加上独占锁(TABLELOCKX),一直到该事务结束(HOLDLOCK)
ln1=SQLEXEC(lnHandle, "Select * FROM EmppayWITH (TABLOCKX, HOLDLOCK)","Emppay")
**执行其它命令,比如更新数据
ln2=SQLEXEC(lnHandle,"Update PayTotal Set ......")
...
...
**如果所有命令都正确执行了,则
=SQLCOMMIT(lnHandle)
***如果要放弃整个事务处理,用
=SQLROLLBACK(lnHandle)
***关闭连接,事务自动结束,锁也解开
=SQLDISCONNECT(lnHandle)
Else
****连接失败
EndIf
*** SQLSETPROP()函数
这个VFP函数是用来设置当前连接的属性的。 比如上边的手工事务处理。
还有一个比较常用的属性是DISPLOGIN,该属性控制是否显示SQL SERVER的登录表单
第3个参数: 1 - 显示登录表单,如果登录信息(用户名,密码)不完全2 - 总显示登录表单3 - 不显示登录表单
例如:
=SQLSETPROP(lnHandle, "DISPLOGIN",1)
当使用SPT技术时,为节约连接数减少负担,需要经常连接和断开SQL SERVER,有时候你并不希望每次连接都让用户登录,当用户首次登录后,可以把名字和密码存起来,以后的连接可以自动登录了。
***************
谈谈VFP和SQL SERVER搭配做C/S系统 (六) -- SQL SERVER的索引
作为VFP程序员,我们深知索引对表的重要性,好的索引可以大大缩短程序读取数据的时间。
索引对于SQL SERVER数据表来说,同样是很重要的。你可以做个简单的测试。
1. 索引测试
从SQL SERVER程序组里或者ENTERPRISE MANAGER的TOOLS菜单上打开QUERY ANALYZER工具.
连接到你的SERVER后, 选择QUERY菜单上的CURRENT CONNECTION OPTIONS(当前连接选项).
【VFP配合SQLSERVER开发C/S系统(下)】相关文章:
2025年外省高中学业水平合格性考试成绩转入江苏认定的通告公布03-23
2016年职称英语综合类阅读判断练习八03-23
盐阜大众报报业集团(盐城)公开招聘《东方生活报》编辑记者的公告 2月25日到3月3日报名03-23
2018湖南省农村信用社联合社招聘科技专业人才拟聘公告03-23
浅析助学贷款对经济发展的正向影响03-23
5月11日开始报名!2023年内蒙古鄂尔多斯市乌审旗秋季幼升小入学条件和流程公布03-23
英语口语话题:开立账户03-23
敲重点啦!2024年四川攀枝花中小学寒假时间和春季开学时间公布03-23
高一叙事作文:雨伞下的触动_800字03-23
关于开学的作文_1200字03-23
