Access2003基础知识.ppt
16页《Access数据库应用基础及实训教程》上一页下一页退出2.6 数据类型与表达式数据类型和表达式都是数据库非常重要的内容合理地 使用数据类型,可以创建出高质量的表;灵活运用表达式, 可以设计出丰富多彩的查询因此,准确合理地用好数据类 型和表达式,是设计出功能强大的数据库管理系统的前提v2.6.1 数据类型Access数据库为字段提供了10种数据类型,它们的用 法和所占存储空间的大小如下:(1) 文本型(Text):用于文本或文本与数字的结合,最长为255个字符(字节),默认值是50在Access中,每一个汉字和所有特殊字符(包括中文标点符号)都算作一个字符而且系统只保存输入到字段中的字符2) 备注型(Memo):用于长文本或长文本与数字的结合,最长为65 535个字符但Access不能对备注字段进行排序或索引,而文本字段可以进行排序和索引《Access数据库应用基础及实训教程》上一页下一页退出(3) 数字型(Number):用于可以进行数值计算的数据,但货币除外数字型字段按字段大小分字节、整型、长整型、单精度型、双精度型、同步复制ID和小数7种,分别占1、2、4、4、8、16和12个字节。
Access默认为双精度型4) 日期/时间型(Date/Time):用于存储日期和时间值,占8个字节5) 货币型(Currency):这种类型是数字数据类型的特殊类型,等价于双精度数字类型输入货币字段数据时,Access会自动显示人民币符号和千分位处的逗号,并添加两位小数当小数部分多于两位时,Access会对数据进行四舍五入6) 自动编号型(Auto Number):用于在添加记录时自动插入的序号(每次递增1或随机数),默认是长整型,也可以改为同步复制ID型自动编号一旦被指定,会永久地与记录连接如果删除了表中含有自动编号字段的一个记录后,Access并不会为表格自动编号字段重新编号7) 是否型(Yes/No):用于表示逻辑数据,其值为Yes/No、True/False或On/Off其数据长度为1个字符《Access数据库应用基础及实训教程》上一页下一页退出(8) OLE对象型(OLE Object):用于使用OLE协议在其他程序中创建的OLE对象(如Word文档、Excel电子表格、图片和声音等),最大长度为1GB9) 超级链接型(Hyper Link):用于存储超链接,可以是包含超级链接地址的文本或以文本形式存储的字符与数字的组合。
其字段最大长度为64 000个字符10) 查阅向导型(Lookup Wizard):让用户通过组合框或列表框选择来自其他表或值列表的值,实际的字段类型和长度取决于数据的来源v2.6.2 表达式下面先介绍几个概念v1. 字面值字面值(也称原义值、文字值)是指在 Access系统中使用与 显示完全相同的值,即通常所说的常数如数值0.25和1.3;字 符串“姓名”和“shanghai”等都是字面值《Access数据库应用基础及实训教程》上一页下一页退出v2. 常量常量是指预先定义好的、固定不变的数据如数值常量 128和-39;日期常量#2006-1-18#;逻辑常量True和False等v3. 变量变量是指命名的存储空间,用于存储在程序执行过程中可 以改变的数据变量名必须以字母开头,可以包含字母、数字 和下划线,在同一范围内必须是唯一的(即不能重名)组成变量 的字符不能超过255个,且中间不能包含标点符号、空格和类型 声明字符变量分整型、单精度、货币、字符串和日期等不同 类型在 Access数据库中,字段名、属性控件等都可以作为变量 若用字段名作为变量,其表示方法是用英文方括号([])将 字段名括起来。
例如,[班级]、[姓名]、[成绩]等若同时用不同表中的同名字段作为变量,则必须将表名写 在每一个字段前,也用[]括起来,并用英文感叹号!将两对 []分开例如:[情况]![姓名]、[课程]![姓名]《Access数据库应用基础及实训教程》上一页下一页退出v4. 运算符运算符又称操作符,在Access系统有以下5种运算符1) 算术运算符算术运算符有:∧(乘方)、*(乘)、\(整除或取整)、/(除)、 Mod(取余)、+(加)、-(减)如:15\4=3、18 Mod 4=2、 3∧3=272) 关系运算符(又称比较运算符)关系运算符有:=(等于)、>(大于)、<(小于)、>=(大于等 于或不小于)、<=(小于等于或不大于)、<>(不等于)关系运算的结果是逻辑值:True或False例如:3<5的运 算结果是True,而3>5的运算结果是False3) 连接运算符连接运算符有:&和+主要用于连接两个字符串当运算符两边都是字符串时,&和+的作用一样,都是将两 边的字符串连接起来生成一个新的字符串如:“中国”+“上海” 和“中国”&“上海”,结果都是“中国上海” 《Access数据库应用基础及实训教程》上一页下一页退出如果用“&”连接数字,&会将数字转换成字符串后再连接,并且 在原数字前后都添一个空格。
例如:“01电子商务”&3的结果是 :“01电子商务 3”而“+”只能连接两个字符串为了避免与算术运算符“+”混淆,一般用&连接两个字符串 而尽量不使用+4) 逻辑运算符逻辑运算符有:Not(否)、And(与)、or(或)参与逻辑运算的量和逻辑运算的结果都是逻辑值如:A And(与) B,当且仅当A、B同时为真时,结果为真,其他情况 结果皆为假5) 特殊运算符(又称匹配运算符)特殊运算符有:Between…And…,确定值的匹配范围; Like,确定值的匹配条件;In,确定匹配值的集合;Is,确定一 个值是Null或not Null;Not,确定不匹配的值特殊运算符前 都可以有Not,形成复合运算《Access数据库应用基础及实训教程》上一页下一页退出例如: Between #2006-1-1# And #2006-3-31#:指属于2006年第 一季度的日期 In(“英语”,“德语”,“法语”):指与“英语”、“德语”、“法语”之一相同的值 Like“王*”:指第一个字是王的字符串Like“# # # # #”:指5个数字字符的字符串v5. 表达式用运算符将字面值(即为常数)、常量、变量、函数以及字 段名、控件和属性等连接起来的式子称为表达式,该表达式将 计算出一个单个值。
可以将表达式作为许多属性和操作参数的 设置值;还可以利用表达式在查询中设置准则(搜索条件)或定 义计算字段;在窗体、报表和数据访问页中定义计算控件,以 及在宏中设置条件表达式的生成方法有两种:自行创建表达式和使用表达式 生成器生成表达式表达式中可以有各种运算符,它们的优先 级顺序如下:《Access数据库应用基础及实训教程》上一页下一页退出(1) 函数;(2) ∧;(3) * 和 /; (4) \和Mod;(5) + 和 -;(6) =、>、<、>=、<= 和 <>;(7) Not;(8) And;(9) Or必要时可用添加“( )”的方法改变原来的优先级表达式根据其计算结果分为算术表达式、逻辑表达式、文 本表达式或日期表达式如:37+66是算术表达式;a+b>c是 逻辑表达式;“上海”&“北京”是文本表达式;#2006-1-1# + 5是 日期表达式《Access数据库应用基础及实训教程》上一页下一页退出v下面举几个表达式的实例例:写出下列各表达式:(1) 姓名中最后一个字是“钢”的男性2) 20世纪90年代出生的3) 代号中前两位是“0”(共6位数字)4) 工资高于2000元低于4000元的工程师。
解:(1)[姓名]Like“*钢”and [性别] =“男”2)[出生日期]Between #1990-1-1# and #1999-12-31#3)[代号]Like“00# # # #”4)[工资]>2000 and[工资]<4000 and[职称]=“工程师”v2.6.3 常用函数Access 系统提供了大量的标准函数,有利于管理和维护数 据库下面介绍一些常用的函数《Access数据库应用基础及实训教程》上一页下一页退出v1. 系统日期函数格式:DATE( )功能:返回当前系统日期举例:在窗体或报表上创建一个文本框,在其控件来源属性中 输入:=DATE( )则在控件文本框内会显示当前机器系统的日期,如:06-3-6v2. 系统时间函数格式:TIME( )功能:返回当前系统时间举例:在窗体或报表上创建一个文本框,在其控件来源中输入 : =TIME( )返回当前机器系统的时间,如:21:07:23v3. 年函数格式:YEAR(<日期表达式>)功能:返回年的四位整数《Access数据库应用基础及实训教程》上一页下一页退出举例:myd = # Apri 20,2006#YEAR(myd)=2006。
v4. 月函数格式:MONTH(<日期表达式>) 功能:返回1~12之间的整数,表示一年的某月举例:MONTH(myd)=4v5. 日函数格式:DAY(<日期表达式>) 功能:返回值为1~31之间的整数,表示日期中的某一天举例:DAY(myd)=20v6. 删除掉前导、尾随空格函数格式:①LTRIM(<字符串表达式>)②RTRIM(<字符串表达式>)《Access数据库应用基础及实训教程》上一页下一页退出③ TRIM(<字符串表达式>)功能:① LTRIM 函数可以去掉“字符串表达式”的前导空格② RTRIM 函数可以去掉“字符串表达式”的尾随空格③ TRIM 函数可以同时去掉“字符串表达式”的前导和尾随空格举例:myst=“ I am a student. ”LTRIM(myst) 返回值为字符串“I am a student . ”RTRIM(myst) 返回值为字符串“ I am a student .”TRIM(myst) 返回值为字符串“I am a student .”v7. 截取子串函数格式:MID(<字符串表达式>), <n1>[,<n2>]功能:从“字符串表达式”的左端第“n1”个字符开始,截取“n2”个字 符,作为返回的子字符串。
《Access数据库应用基础及实训教程》上一页下一页退出说明:① “n1”和“n2”都是数值表达式② 方括号中的内容是可选的,在后面的格式中如遇到同类情况时不再说明③ 当“n2”默认时,则返回从“字符串表达式”的左端第“n1”个字符开始直到“字符串表达式”的最右端的字符举例:myst=“I am a student”MID(myst,5) 返回值为字符串“ a student”MID(myst,10,4) 返回值为字符串“uden”MID(myst,1,4) 返回值为字符串“I am”v8. 数值转换为字符函数格式:STR(<数值表达式>)功能:将“数值表达式”转换成字符串《Access数据库应用基础及实训教程》上一页下一页退出说明:如果“数值表达式”是一个正数,则转换后的字符串有一个前导空格,暗示有一个正号举例:STR(459) 返回值为字符串“ 459”STR(-459.65) 返回值为字符串“ -459.65”STR(459.001) 返回值为字符串“ 459.001”v9. 字符转数值函数格式:VAL (<字符表达式>)功能:返回包含在字符串中的数字说明:①当遇到第1个不能识别为数字的字符时,结束转换。
②函数不能识别美元符号和逗号③空格字符将被忽略《Access数据库应用基础及实训教程》上一页下一页退出举例:VAL(“1615 198ok street N.E.”) 返回值为1615198VAL(“2468”) 返回值为2468VAL(“24 and 68”) 返回值为24v10. 条件函数格式:IIF。





