vf与sql命令对比

上传人:第*** 文档编号:32819234 上传时间:2018-02-12 格式:DOC 页数:4 大小:70KB
返回 下载 相关 举报
vf与sql命令对比_第1页
第1页 / 共4页
vf与sql命令对比_第2页
第2页 / 共4页
vf与sql命令对比_第3页
第3页 / 共4页
vf与sql命令对比_第4页
第4页 / 共4页
亲,该文档总共4页,全部预览完了,如果喜欢就下载吧!
资源描述

《vf与sql命令对比》由会员分享,可在线阅读,更多相关《vf与sql命令对比(4页珍藏版)》请在金锄头文库上搜索。

1、VFP 基本语法 vs. VFP 的 SQL 语法操作 VFP 基本语法 VFP 的 SQL 语法 浏览数据表 use empbrowseselect * from emp设定条件浏览数据表 use emp browse for salary50000select * from emp where salary50000 建立数据表 create emp CREATE TABLE emp (id c(6) 修改记录use empreplace salary with 60000 for name=Peter update emp set salary=60000 where name=Pete

2、r 新增记录 use empappend blankreplace name with Tom,sex with “男” INSERT INTO emp (name) values (Tom)删除记录 use empdelete for name=Tom delete from emp where name=Tom OLE/COM/ActiveX 的使用拜物件导向技术发展之功,微软创造了 COM 的环境,让我们可以使用不同的程序来使用相同 COM 组件(*.dll,*.ocx),节省了许多的时间,但其实 VFP 对于这些 COM control 的兼容性并没有 VB,VC 等那么好,并不是所有

3、的 control 都能拿到 VFP 中用喔。透过选单中tools/object browser 开启其 Com Libraries 便可扫瞄登录档中所有已注册的 com 组件,并检视其属性 ,方法与事件等,取得如何使用的资讯。 COM 组件的注册就微软的DCOM 技术而言,可供重复使用的 control 必须先在 Windows 中注册才能使用,注册control 一般来说有 5 种方法,它们有各自的优点,运用范围也不同。使用安装程序注册利用 VFP 本身的 InstallShield 制作安装程序,安装时可将系统所需要的 control 注册,反安装时亦可将 control 解除注册。此方

4、法最适合给使用者使用。使用 regsvr32.exe 注册利用微软系统提供的 regsvr32.exe 可注册指定的组件,若成功注册,会跳出一视窗DllRegisterServer in xxx.ocx succeeded,若解除成功则会跳出UnDllRegisterServer . .代表成功的执行了组件内部的注册函数 DllRegisterServer 或解注册函数UnDllRegisterServer。于命令提示字符手动执行注册 control:regsvr32 windowssystemnetshare.ocx &需注意 control 的路径解除 control:regsvr32 /

5、u windowssystemnetshare.ocx 透过自订函数执行撰写自订函数 MyRegsvr Function MyRegsvr ( lpcRegFilename, lplIsreg ) If File(lpcRegFilename) lpcRegFilename = iif(llisreg, lpcRegFilename, /u + lpcRegFilename) Run /n regsvr32 &lpcRegFilenameEndifReturnEndfunc 注册 control:MyRegsvr( netshare.ocx, .T.) &需注意 control 的路径解除 c

6、ontrol:MyRegsvr( netshare.ocx, .F.)使用 VFP 注册进入 VFP后,透过选单中 tools/options/controls/ActiveX controls,可看见所有已注册的 control,可透过右侧的 Add.来增加想要注册的 control 此方法只能用在系统开发者,因为使用者并没有 VFP 的主程序。使用组件本身的注册函数注册 control declare integer DllRegisterServer IN myserver.dll?DllRegisterServer()解除 control declare integer DllUnre

7、gisterServer IN myserver.dll?DllUnregisterServer()若撰写成函数,范例如下 Function MyDllRegister ( lpLibFileName, isReg) isReg = iif(type(isReg)=U, .T., isReg) lpProcName = iif(isReg, DllRegisterServer, DllUnregisterServer ) Declare INTEGER (lpProcName) in (lpLibFileName) return &lpProcName.() &传回 0 表示成功 Endfun

8、c MyDllRegister( netshare.ocx, .T.) &若为解除注册则为 MyDllRegister( netshare.ocx, .F.) Clear Dlls VFP 连接 Sql Server的范例* * SQL Server 连结设定*lcUserName=salcServerName=127.0.0.1lcUserPass=123456lcDBName=master ConnectionHandle=SQLSTRINGCONNECT(DRIVER=SQL Server;SERVER=+lcServerName+;DATABASE=+lcDBName+;UID=+lc

9、UserName+;PWD=+lcUserPass ) if ConnectionHandle O = MESSAGEBOX(EXCEL 没有安装或损坏或因为记忆体不足而无法使用!,64,提示)returnendifoExl.SheetsInNewWorkbook?=1oExl.Visible=.T.oExl.workbooks.Open(&Exl_file)oExl.activesheet.rows(1).insert oExl.activecell.formular1c1 = 表头 with oExl.SELECTION.font .name = 细明体 .fontstyle = norm

10、al .size = 20 .strikethrough = .f. .superscript = .f. .subscript = .f. .outlinefont = .f. .shadow = .f.endwith 读入 Excel 档的范例 Exl_file = GETFILE(XLS, 选择或取消, 选择, 0, 请选择要读入的 Excel 档) DO CASE CASE EMPTY(Exl_file) Messagebox(并未选择要读入的 Excel 档,1+32,讯息视窗)QUITOTHERWISE ? 你选择要读入的 Excel档是+Exl_fileENDCASE impor

11、t from &Exl_file Type xl8browse 写出为 Excel 档的范例(含栏位名称) use Student copy to stu_info type XL5 写出为 CSV 档的范例(含栏位名称) use Student copy to stu_info type CSV 写出为文字档的范例 1(不含栏位名称) use Student copy to stu_info type DELIMITED 写出为文字档的范例 2(不含栏位名称 ) use Student copy to stu_info type SDF使用技巧抓取指定目录下的所有档案 counter=adi

12、r(testarray,*.txt) dimension myarray(counter,5)counter=adir(myarray,*.txt) for i =1 to counterfilename=myarray(i,1) ? filenamenext 错误拦截 ON ERROR DO errhand WITH ERROR(), MESSAGE(), MESSAGE(1), PROGRAM( ),LINENO( ) & Trap OLE & other errors.* *说明:错误处理程序* PROCEDURE errhand PARAMETER merror, mess, mess

13、1, mprog, mlinenoCLEAR IF merror=1426mlineno=LTRIM(STR(LINENO()merror=LTRIM(STR(merror) MESSAGEBOX(发生了一个 OLE 的错误,例如:呼叫的 OLE 程序重复开启了档案+CHR(13)+; Usually this is caused by quitting Word or canceling out of a dialog box in Word. +CHR(13)+; 错误讯息为:+mess)ELSEmlineno=LTRIM(STR(LINENO()merror=LTRIM(STR(merr

14、or) MESSAGEBOX(发生错误在程序第 +mlineno+行+CHR(13)+; 错误讯息为:+mess+错误代码为+merror)ENDIF ON ERRORquitRETURN 设定预设目录 cCurrentProcedure = SYS(16,1) nPathStart = AT(:,cCurrentProcedure)- 1 nLenOfPath = RAT(, cCurrentProcedure) - (nPathStart) + 1 SET DEFAULT TO (SUBSTR(cCurrentProcedure, nPathStart, nLenofPath)跳出对话视窗选择档案 gcXLS=GETFILE(XLS, 选择或取消, 选择, 0, 请选择要处理的 Excel 档) DO CASE CASE EMPTY(gcXLS) Messagebox(并未选择要处理的 Excel 档,1+32,讯息视窗 )QUITOTHERWISE ? 你选择要处理的 Excel 档是+gcXLSENDCASE 检测目录存在与否,若不存在则建立之 IF !DIRECTORY(tmp) MKDIR tmpENDIF

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 建筑/环境 > 工程造价

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号