计算机基础教程第3章visualfoxpro数据元素_第1页
计算机基础教程第3章visualfoxpro数据元素_第2页
计算机基础教程第3章visualfoxpro数据元素_第3页
计算机基础教程第3章visualfoxpro数据元素_第4页
计算机基础教程第3章visualfoxpro数据元素_第5页
已阅读5页,还剩22页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Visual

Foxpro程序设计基础医学院:

chenz

第一章数据库系统基础知识一、本章主要知识点1、基本概念:数据、数据处理、DB、DBMS、DBS2、数据模型:层次、网状、关系3、关系术语:三种模型、关系、属性、元组4、关系运算:选择、投影、连接5、关系完整性:实体完整、域完整、参照完整性第二章VFP数据库管理系统概述一、本章知识点1、VFP安装、启动、退出及窗口组成2、VFP性能指标、处理文件类型3、VFP工作方式、命令格式4、VFP辅助设计工具5、项目管理器第三章Visual

FoxPro数据元素一、本章知识点1、常量的类型及使用2、变量的类型及使用3、表达式类型及运算顺序4、常用函数的使用3.1

常量1、常量(1)数值型常量(2)字符型常量——用“”或‘’括起来

(3)逻辑型常量——两边有小圆点(4)日期型常量——用CTOD()或{}来表示例:“”可表示为:ctod(“10/15/1998”)或{^1998/10/15}(5)货币型常量----$数字一、变量的三种基本属性:名称、类型、长度二、变量名的构成原则:1、由字母、数字、下划线组成,但必须以字母开头2、长度不超过10个字符3、不与FoxPro的保留字名相同三、变量的分类:字段变量:表中字段名(13种数据类型)。内存变量:程序中引入的临时存放数据的变量。数组变量:特殊的内存变量。系统变量——以下划线开头,它是全局变量(Public)3.2变量1、内存变量的赋值格式1:store

<表达式>

to

<内存变量名表>例:

store 5tox,y,z格式2:<内存变量>=<表达式>例:x=5Note:当一个内存变量名与当前打开的表中的字段变量名重名时,其字段变量的优先级高于内存变量。若要使用内存变量,可加前缀m.或m.变量2、内存变量值的显示格式1:LIST/DISP

MEMO[LIKE<通配符>]格式2:?|??<内存变量名表>(一)内存变量3、内存变量的保存(内存文件名默认扩展名.MEM)格式:save

to

<内存文件名>

[all like/except<

变量名表>]4、内存变量的恢复格式:restore

from

<内存文件名>

[additive]Note:

additive的作用——保证不清除内存中现有的内存变量,当有同名内存变量时,用文件中的变量值代替已在内存的同名内存变量的值。例:现有内存变量:A=“临时文件”

B=12.345

AA={^03/03/98}例:save

totempsave to

temp1

all

like

a*save all

|except

A*

to

temp2例:现有内存变量:A1=“文件”

C=10和内存变量名文件TEMP(上例定义)命令:restore

from

TEMPrestore

from

TEMP

additive5、内存变量的清除格式1:release

all[like|except<通配项>]格式2:clear

memory或clear

allNote:clear

all与clear

memory的区别:后者的使用也可以内存变量,无论这个内存变量在哪一个程序级别中定义,但不会作用于数据库;而前者也可以内存变量,在执行时,会自动调用后者,同时执行关闭所有数据库。1、数组变量的定义dimension|

declear

数组名(下标)Note:vf能定义一维和二维数组;数组分量可以是不同类型的值;对未赋值的数组元素,系统自动赋逻辑假.f.二维数组可以转化为一维数组。2、数组的赋值与内存变量相同,可用“=”号或store命令例3-5:P36。(二)数组变量(三)字段变量表中记录对同一字段名可取不同的值,因此,表中的字段名就是变量,称为字段变量。字段变量的数据类型最丰富,具有13种常用类型。字段变量前表中字段可直接的完整形式为:表名.字段变量 ,但对当字段名。3.3

运算符与表达式1、运算符1)运算符的种类:P36-38

表3-1至表3-42)优先级高

括号()

算术运算符^*、/%

+、-

字符运算符+、-

关系运算符$其它低

逻辑运算符.not..and.or.2、表达式数字表达式(算术表达式)字符表达式例:C1=“中国C2=“中国”+“人民””-“人民”结果为:“结果为:“””(3)关系表达式P37(例3-8)①若为数值型数据则按数值的大小进行比较例:?3>2②若为字符型数据则按字符的ASCII码的大小进行比较例:?“ABC”=”AB”?“AB”=”ABC”(setexact

off时,结果为.t.)(结果为.f.)?“设计”$“程序设计”Note:Ⅰ、命令set

exact

off|on,默认为OFF状态(精确比较)Ⅱ、用“==”比较是严格比较(不管是off还是on状态)③若为日期型数据则按日期先后次序比较,后者为大例:{^90-08-12}>

{^98-08-12}④若为汉字则按其机内码的大小进行比较(4)逻辑表达式.not.(5)日期表达式日期-日期日期+-整数.and.

.or.例:?ctod(“99/02/12”)+10?

ctod(“99/05/05”)

-ctod(“99/04/20”)3.4

常用函数在VFP中,函数主要分为以下五大类:1、数值函数2、字符函数3、日期时间函数4、转换函数5、测试函数重点是字符、转换函数,难点是字符函数。一、数值函数绝对值函数ABS(数值表达式)取整函数

INT(数值表达式)平方根函数SQRT(数值表达式)幂函数

EXP(表达式)∏函数

PI()余数函数

MOD(表达式1,表达式2)见P40函数说明(7)四舍五入函数

ROUND(表达式,小数位n)例:?MOD(10,-3)Note:余数的符号与表达式2的符号相同;余数的绝对值比表达式2的绝对值小。例:?ROUND(3.141519,3)?ROUND(15/7,4)Note:结果自动对n+1位四舍五入到第n位。二、字符函数宏代换函数

&移去字符串首尾空格的函数子串提取函数字符串长度函数查找子串位置函数生成空格函数字母大小写转换函数字符串替换函数1.

宏代换函数

&【格式】&<字符型内存变量>[.]【功能】在字符型内存变量前使用宏代换函数符号&,将用该内存变量的值去替换&和内存变量名。如后面紧接有其它字符表达式时,应加园点.进行分隔。【例3-16】aa=

‘DBMS’bb=‘aa’?aa,bb,&bb结果为:DBMS

aaDBMSa1=‘+5*8

’a2=‘5&a1./5’?&a2结果为:132、求子串位置函数AT:求字符串1在另一个字符串2中的起始位置AT(字符串1,字符串2)例:?AT(“bc”,”abcd”)?AT(“bc”,”acbd”)3、LEN:求字符串的长度LEN(字符串)例:x=“ABC”?LEN(x)4、去掉字符串的空格TRIM(字符串)

=

RTRIM(字符串)、

LTRIM(字符串)、ALLTRIM(字符串)5、空格函数

SPACE(N)6、取子字符串①SUBSTR(字符串,起始位,子串长)例:c=substr(“computer”,4,3)?c②取左子串LEFT(字符串,子串长)例:?left(“computer”,4)③取右子串RIGHT(字符串,子串长)7、字符串替换函数STUFF(字符串,起始位置,替换长度,子串)例:?stuff(“计算机应用能力考试“,7,8,”基础”)三、转换函数(1)数值转换函数STR(数值式[,[长][,小数位]])、VAL(串)例:?str(45.67,6,3),val(“-3a2”)?str(3.1415926535,8,4),

val(“3+2”)(2)字母大小写转换UPPER(字符串)

LOWER(字符串)(3)ASCII码符CHR(数值表达式)ASC(字符串)(4)字符转日期CTOD(日期字符串)(5)日期转字符DTOC(日期表达式)Note:

日期表达式有两种:①{日期}②用CTOD函数转换四、日期时间函数①DATE()

、TIME()

、DATETIME()②YEAR(日期型表达式)、MONTH(日期型表达式)、DAY(日期型表达式)③HOUR(日期型表达式)、MINUTE(日期型表达式)、SEC(日期型表达式)五、测试函数(1)测试文件开始BOF([工作区])Note:若当前记录为第一条,则SKIP

–1时为真。(2)测试文件末尾EOF([工作区])Note:若当前记录为最后一条,则SKIP

时为真。])(3)测试记录号

RENCO([工作区例:go

4skip

–1?

o()(4)查询测试FOUND([工作区])Note:用SEEK,FIND,LOCATE函数可以查找记录,找到与否用此函数测试。TYPE(“<表达式>”)或vartype(表达式)(5)数据类型例:x=5?type(“date()”),vartype(date())?type(“x”),vartype(x)(6)测试文件的存在FILE(字符串)例:accept “输入文件名”to

fmif

file(fm)use

&fmlistelse?”文件未找到”Endif(7)选择函数IIF(<逻辑表达式>,<表达式1>,<表达式2>)例:x=3?iif(x>=0,sqrt(x),”不能开方”)相当于下

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论