《数据库部分备课思路.ppt》由会员分享,可在线阅读,更多相关《数据库部分备课思路.ppt(43页珍藏版)》请在三一办公上搜索。
1、字符型(C)用定界符单引号、双引号“”或方框号 括起来的数据,其中定界符不作为字符串的一部分,且定界符必须成对匹配。注:某种定界符作为某字符串内容的一部分,则需使用另一种定界符为该字符串定界。不包含任何数据的字串(“”),叫做空串,包含空格的字符串(“”)叫空格串,与空串不同。,例如:12“大中华”Abcd,7.1+7.2 基本数据类型和数据常量,例1:下列字符串表示方法正确的是:A)“AB“ab”D”B)AB“ab”D C)AB“ab”D D)ABabD,例2:下列字符型常量书写格式不正确的是:A)“1234”B)Visual FoxPro C)ABCD D)程序设计,数值型(N)由09、小
2、数点和正负号组成;整数、小数和用科学计数法表示的数都是数值型常量。,例如:4 3.1415-9.9 3.446E+10(3.4461010)6.7E-13(6.710-13),例:下列不是合法的数值型常量是:A)-145 B)15.876 C)123 D)1.45E-3,货币型常量(Y)以符号“$”开头,小数部分超过4位,则四舍五入取4位小数。,例:$6.66666存储时为$6.6666,日期型常量(D)传统日期格式为:mm/dd/yy(结果输出方式)日期输入的格式为:yyyy-mm-dd或yyyy/mm/dd“”表示严格的日期格式。,例:以下日期格式正确的是:A)2003-05-01 B)“
3、2003-05-01”C)2003-05-01 D)03-05-01,日期时间常量(T)默认格式为:yyyy-mm-dd,hh:mm:ss a/p,例:SET MARK TO“.”?2003-10-11,12:45 a,逻辑型常量(L)只有真和假值,用.T.t.Y.y.表示真值,用.F.f.N.n.表示假值。,备注型(M)用于存放不定长或大量的字符型数据。备注型数据不存放在数据表中,而是存放在与数据表文件同名、扩展名为.FPT的备注文件中。,通用型(G)用于存储图形、图像、声音、电子表格等多媒体数据。和备注型数据一样,通用型数据也是存放在与数据表同名、扩展名为.FPT的备注文件中。,内存变量,
4、1、内存变量命名规则 以字母、汉字或下划线开头。由字母、汉字、下划线和数字组成。长度不超过128个字符。,7.2 变量,VF的变量分为内存变量和字段变量两大类。,例:合法的变量名有:IBM-PC IBM_PC IBM PC IBM.PC _IBMPC 586IBM IBMPC奔腾586 Visual FoxPro,例:下列变量名错误的是:A)书 名 B)作者 C)定价 D)出版社,2、内存变量的赋值:格式1 内存变量=表达式 格式2 STORE 表达式 TO 内存变量表 区别:格式1“=”一次只能给一个内存变量赋值 格式2 STORE可将同一表达式的值赋给多个内存变量,注,内存变量的类型有6种
5、N、C、D、L、T、Y,赋值时,同时把值和类型赋给该变量。内存变量与字段变量同名时,系统优先引用字段变量。要引用内存变量,可在内存变量前加前缀“M.”或“M-”,以示区别。,例:下列赋值语句正确的是:A)a=1,b=5 B)a,b=8 C)STORE 5 to a,b,c D)store 5,6,7 to a,b,c,例:表文件“学生.dbf”,有一字段为“姓名”,且当前记录的姓名字段的值为“李红”,同时有内存变量名也为“姓名”,该变量的值为“李晓东”,则执行命令:?姓名,M.姓名 结果为:,例:内存变量X、Y、M、N、Z的数据类型是:X=2001-10-12 10:12 a Y=.T.M=$
6、123.45 N=123.45 Z=”123.45”,例:VFP内存变量的数据类型不包括 A)数值型 B)货币型 C)备注型 D)逻辑型,格式一?表达式表 功能:将各表达式的结果输出到当前光标所在行的下一行的位置处。格式二?表达式表 功能:将各表达式的结果输出到当前光标所在位置处。注:多个表达式间必须用“,”隔开。,3、内存变量值的输出(12_27 普本气科5、6),例:?”Visual”,“FoxPro”,是?开发,应用程序,的,软件,例:?”Visual”,“FoxPro”,是?开发,应用程序,的,软件,4、内存变量的显示命令 LIST|DISPLAY MEMORY LIKE 通配符,5、
7、内存变量的清除命令 格式一 Clear Memory 功能:清除所有内存变量 格式二 Release 内存变量名表 功能:清除内存变量名表中指定的内存变量 格式三 Release all Like|Except 通配符 通配符有*代表任意多个字符?代表任意一个字符 格式四 Clear all 功能:清除所有内存变量,关闭所有已打开的文件。,例:若要清除变量名一共是4个字母,且第2个字母是T的变量,则下列正确的是 A)Release all Like?T?B)Release all Like?T*C)Release all Like*T?D)Release all Like*T?,例:清除第一个
8、字母是X,第三个字母是Y的所有内存变量,命令是:.,6 内存变量的保存命令 SAVE ALL LIKE 通配符|EXCEPT 通配符 TO 内存变量文件名 内存变量恢复命令 RESTORE FROM 内存变量文件,数组(12_29普本电信)变量名相同,但用不同下标表示的内存变量,定义:DIMENSION/DECLARE 数组名(下标1,下标2),数组名(下标1,下标2),例 DIMESION X(3),Y(2,2)表示定义了一维数组X,含3个下标变量,分别为 X(1)、X(2)、X(3)。定义了二维数组Y,含4个下标变量,分别为Y(1,1)、Y(1,2)、Y(2,1)、Y(2,2)。数组一经定
9、义,系统自动赋予每个下标变量为L型 初值为.F.。二维数组可用一维数组表示,如 X(1,1)X(1,2)X(2,1)X(2,2)对应一维数组 X(1)X(2)X(3)X(4),VFP支持一维和二维数组,且数组中各下标变量的类型不必一致。,例:Dimension x(2,2)x(1,1)=2 x(1,2)=”李明”x(2,2)=2003-10-21?x(1),x(2),x(3),x(4),例:Declare M(2,3)则数组中包含的数组元素的个数是:.,例:定义一个二维数组A(3,4)后,一维数经元素A(6)与二维数组中 元素为同一变量.,字段变量表中的字段名就是变量,称为字段变量。,1、数值
10、型表达式 优先级 括号()乘方*或 乘*,除/,求余数%加+,减-,例:M=28+2?M A)30 B)28+2 C)28+2 D)30.00,若A=7,B=3,C=4,表达式A%3+B3/C的结果是,7.4 运算符与表达式,2、字符型表达式+完全连接运算符 将两个或多个字符串按顺序直接连接成一个字符串。-不完全连接运算符 连接两个字符串,并将前一个字符串尾部空格移到结果字符串的尾部。,例:x=字符 y=表达式!?x+y,x-y,例:Store“456”To x Store“123”-x To y?y,3、日期时间型表达式 日期1日期2=N型数值 日期天数=D型数值 日期时间秒数=T型数值 日
11、期时间1日期时间2=N型数值,例:以下表达式中,不正确的是 A)2001.09.01 11:10:10 AM-2001.09.01 11:10:10 AMB)2002/01/01+20C)2002.02.01+2001.02.01 D)2000/02/01-2001/02/01+1000,4、关系型表达式(结果必为L型)关系运算符:、=、或!=(不等于)、$子串包含符,左串是否连续包含在右串内,包含 结果为.T.,不包含结果为.F.=若为字符串比较,受字符串精确匹配开关SET EXACT ON/OFF的影响。当设置为SET EXACT OFF时,要求“=”右边的字串为左边字串的前缀,结果为.T
12、.,否则结果为.F.。设置为SET EXACT ON时,要求“=”两边的字串必须完全相等,结果为.T.,否则为.F.。,=字符串精确匹配符号,只有等号两边的字符串完全相等时,结果为.T.,否则为.F.,它不受SET EXACT ON/OFF的影响。,注,N型和Y型数据比较 按数值的大小比 D型数据比较 按年月日来比较 L型数据比较.T.大于.F.,C型数据比较 PinYIN 汉字以拼音字母顺序来比较,其它数据以ASCII码值比较(09,az,AZ的ASCII码值依次增大)。,例:?100”你好”,“112”85”?2001-10-302001-01-30?东方商厦+滨江商厦友谊商店,例:?”1
13、23”$”23123456”,”ab”$”acdbe”?”har”$”HARBIN”,例:SET EXACT OFF?”AB”=”ABCD”,”AB”$”ABCD”?”ABCD”=”AB”,”ABCD”=”AB”,”AB”=”AB”SET EXACT ON?”AB”=”ABCD”,”AB”$”ABCD”?”AB”=”AB”,”ABCD”=”AB”,”AB”=”AB”,例:在关系运算中,和 符号仅适用于字符型数据。,5 逻辑型表达式(结果为L型)优先级由高到低 NOT 或.NOT.|或!逻辑非 取逻辑值的相反值 AND 或.AND.逻辑与 两边的逻辑值都为真时结果才为真 OR 或.OR.逻辑或
14、两边的逻辑值都为假时结果为假,有一个为真,结果必为真,例:?1210 or”我”=”我们”,not“a”ef”,例:X=.T.?X and X=X A).T.B).F.C)0 D)错误信息,注,各表达式间和优先级关系:首先:数值型表达式、字符型表达式、日期型表达式和货币型表达式(四种为平级)其次:关系型表达式最后:逻辑型表达式,7.3 函数,1.数值计算函数 取绝对值函数 格式:ABS(数值表达式)功能:返回指定数值表达式的绝对值.,例:?ABS(10),ABS(-16.78),ABS(-684*3),符号函数 格式:SIGN(数值表达式)功能:返回指定表达式的符号。若表达式结果为正数,函数结
15、果为1;表达式结果为负数,函数结果为-1;表达式结果为0,函数结果为0。,例:?Sign(10-100),Sign(1+10),Sign(1-1),例:?ABS(Sign(-15.45),求整数函数 格式一:INT(数值表达式)功能:返回指定数值表达式的整数部分。格式二:CEILINT(数值表达式)功能:返回大于或等于指定数值表达式的最小整数.格式三:FLOOR(数值表达式)功能:返回小于或等于指定数值表达式的最大整数.,例:?INT(3.1445),INT(-10.79),INT(34.8-50),例:x=5.8?CEILING(x),CEILING(-x)?FLOOR(x),FLOOR(-
16、x),四舍五入函数 ROUND(数值表达式1,数值表达式2)功能:数2值大于0时,数2表示小数部分被保留的位数;数2值小于0时,数2表示整数部分舍入位数。,例:?Round(158.457,2)?Round(158.457,-1)?Round(158.457,-3)?Round(12345.67,0),求平方根函数 格式:SQRT(数值表达式)注:只取正根。,例:?Sqrt(2*Sqrt(4),Sign(-100)*Sqrt(100),例:STORE-100 TO X?Sign(X)*Sqrt(ABS(X),取余数函数 格式:MOD(数值表达式1,数值表达式2)功能:若数1和数2同号,则函数值
17、为两个数相除的余数;若数1和数2异号,则函数值为两数相除的余数(此时的余数符号与被除数符号相同)再加上除数的值。,例:?MOD(10,4),MOD(-10,-4)?MOD(10,-4),MOD(-10,4),取最大值函数 格式:MAX(表达式1,表达式2,),例:?MAX(-0.6,-100.1,0)?MAX(2003-05-01,2003-10-01),取最小值函数 格式:MIN(表达式1,表达式2,),例:?MIN(“讲师”,”教授”,”助教”),宏替换函数&字符型表达式.结果为:字符型表达式的内容。“.”:作函数结束标识。,例:STORE“14.31”TO X Y=INT(&X+5)?Y,例:R=2 A=”3*R*R”?&A,2字符处理函数,例:Store 洗衣机 TO YA Store 计算机 TO YB Store B TO A Store Y&A TO string?&string,例:A=12 B=34?&A.&B,字符串长度函数 格式:LEN(字符串表达式)功能:返回指定字符串表达式包含字符的个数,函数值为N型。,例:x=”中文Visual FoxPro6.0”?LEN(x),例:M=LEN(“1810”)?M=M+1,