第三章 讲课实例
设置:
例2.4-2.5将“系科”表“系名称”数据右对齐。当“电话”没有电话号码或Null值时,显示“没有”,有电话号码时按原样显示。
例2-6 设置教师表的“工资”字段格式,当输入“6543.2”时,显示“$6543.20”;当输入“-150”时,显示“($150.00)”;当输入“0”时,显示字符“零”;当没有输入数据时,显示字符串“Null”。
例2-7 设置教师表的“出生日期”字段的显示格式为“英文月份的缩写,日,年”,如Jan,15,2003。
例2-8 在教师表中增加一个数据类型为“是否”类型的“婚否”字段,查看其数据显示形式;然后设置“婚否”字段的“显示控件”属性为文本框,格式为“已婚”代表真值,“未婚”代表假值。
小数位数
例2-9 设置教师表的“工资”字段数据为1位小数。
输入掩码设置
输入掩码字符
说明
0
数字占位符。数字(0-9)必须输入到该位置,不允许输入+和-符号
9
数字占位符。可以将数字(0-9)或空格输入到该位置,不允许输入+和-符号。如果在该位置没有输入任何数字或空格时,Access将忽略该占位符
#
数字占位符。数字、空格、+和-符号都可以输入到该位置。如果在该位置没有输入任何数字时,Access认为输入的是空格
L
字母占位符。字母必须输入到该位置
?
字母占位符。字母能够输入到该位置。如果在该位置没有输入任何字母时,Access将忽略该占位符
A
字母数字占位符。字母或数字必须输入到该位置
a
字母数字占位符。字母或数字能够输入到该位置。如果在该位置没有输入任何字母或数字时,Access将忽略该占位符
&
字符占位符。字符或空格必须输入到该位置
C
字符占位符。字符或空格能够输入到该位置。如果在该位置没有输入任何字符时,Access将忽略该占位符
.
小数点占位符
,
千位分隔符
:
时间分隔符
/
日期分隔符
<
将所有字符转换成小写
>
将所有字符转换成大写
!
使【输入掩码】从右到左而不是从左到右显示。可以在【输入掩码】的任何位置上放置惊叹号
\
用来显示其后跟随的第一个字符
"Text"
可以在【输入掩码】属性中任何位置使用双引号括起来的文本并且原文照印
密码
将“输入掩码”属性设置为“密码”,以创建密码输入项文本框。文本框中键入的任何字符都按原字符保存,但显示为星号(*)。
例2-10 设置教师表的“教师编号”字段的输入掩码为“_ _系-第_ _ _号”,其中的“__”分表代必须输入两位和三位的数字符号。
标
属性的设置
例2-11 将教师表的“姓名”字段的字段名改为“xm”,并且设置“xm”字段的标题为“姓名”。
有效性规则和有效性文本:
例2-12 将“选课”表“成绩”的有效性数值为0~100;出错信息“成绩只能是0到100之间的数值”。
附加:将“学生”表“性别”的有效性数值为“男”或“女”。
默认值
必填字段
允许空字符串
查阅向导
建立主键和索引
建立关系
建立完整性规则
补充章节:数据表的使用
向表中添加新
打开表
输入新记录
超级链接:“插入超链接”对话框
OLE对象:右击字段弹出菜单中选择“插入对象”
备注:Shift+F2(打开“显示比例”,输入长文本),CTRL+ENTER(换行)
保存记录:Shift+Enter,Ctrl+S
添加新纪录:
修改记录
修改数据
替换记录数据
删除记录
查询表中信息
浏览记录
隐藏字段或显示字段:开始→记录→其他
冻结或解冻字段
调整行高和列宽
查找表中数据
排序记录
筛选记录
选择筛选:按选定内容筛选,按内容排除筛选
筛选器
按窗体筛选
高级筛选排序
在数据库窗口操作表
表重命名
复制表
删除表
使用子数据表
展开和折叠子数据表
插入和删除子数据表
数据的导入和导出
导入表
导出表
链接表
第四章 查询讲课实例
查询本身并不保存数据,是一个虚表,是一个对数据库操作的命令
查询的视图模式:
使用向导创建查询:
使用简单查询向导:
例4-1 教师查询:命名为“例4-1教师查询”,显示教师的教师编号、姓名、性别、出生日期、职称、工资字段。
使用交叉表查询向导:
例4-2:统计各民族男女学生人数,命名为“例4-2各民族男女生人数”。
使用查找重复项查询向导:
例4-3:统计各种职称的教师人数。命名为“例4-3各职称教师人数”。
查找不匹配项查询向导:
例4-4:查找没有选课的学生。命名为“例4-4没有选课的学生”
自己
查询
查询设计视图:
查询目标的确定
例4-5:学生选课查询(学号、姓名、课程名称、成绩,按成绩降序排序)。命名为“例4-5学生选课查询”
在查询中使用字段表达式
例4-6:教师年薪查询(教师编号、姓名、工资和年薪,年薪为工资*12,要求只看年薪最高的前十位教师。命名为“例4-6教师年薪查询”
查询条件表达式的设置
比较运算符
关系运算符
含义
例子
=
等于
职称=“教授”, 可查询“职称”字段是“教授”的记录
<>
不等于
政治面貌<>”党员”,可查询“不是“党员”的记录
<
小于
课程成绩<70
<=
小于等于
课程成绩<=70
>
大于
课程成绩>70
>=
大于等于
工作日期>=#92-01-01#,查询92年以后参加工作的记录
逻辑运算符
逻辑运算符
含义
例子
Not
Not连接的表达式为真时,整个表达为假
姓名 Not ”李元”,即查询不是李元的人的记录。
And
And连接的表达式都为真时,整个表达式为真
[课程成绩]>80 And<90,即要查询课程成绩在80与90的记录
Or
Or连接的表达式有一个为真时,整个表达式为,否则为假
[课程成绩]>=70 or 姓名=”李元”,查询课程成绩大于等于70或李元的记录
查询示例: (1)考试成绩在85~70分之间的表达式
(2)籍贯是“天津”或“北京”的表达式
(3)职称是“副教授”,学历是“博士”或职称是“教授”,学
历是“硕士”的表达式
(4)少数民族女生的表达式
文本运算符
文本运算符
含义
示例
结果
&
连接文本
“教学班”&“12”
教学班12
+
连接文本
“106”+“12”
10612
使用上& 与+的区别:
例如:
"abcd" &12345 结果为:"abcd12345"
"123"&456 结果为:"123456"
"abcdef"+12345 结果为:出错
"123"+456 结果为:579
其他运算符
其他运算符
含义
例子
In( 字段值列表)
按列表中的值查找。
In( “李明”,“王平”,“张海”),
查询这三人的记录
Between 初值 And 尾值
指定一个字段值的范围。
Between #92-01-01# and #92-12-31# ,
查询92年一年的记录
Like “文本字段的字符”
指定查找文本的字符模式。
like “张*”,查询所有姓“张”的记录。
Like“张[三林]”,查找“张三”和“张林”。
Is
Is 和Null一起使用,确定某
值是Null还是Not Null
Is Null, Is Not Null
查询示例: (1)出生日期在1985年1月1日~1989年12月31日的表达式
(2)职称为教授或副教授的表达式
(3)没有参加考试(即成绩为空值)的表达式
(4)姓名中式姓“张”的表达式
(5)学号第一位是1,第二位是0、1(即10级、11级学生)的表达式
(6)在1980-2000年之间参加工作、学历为硕士或博士、工资在3000
以下的少数民族教师的信息
函数:函数名([参数1][,参数2][,…])
表4-5 常用数值函数
函数
功能
示例
结果
Abs(数值表达式)
Abs(-30)
30
Int(数值表达式)
Int(5.5)
Int(-5.5)
5
-6
Fix(数值表达式)
Fix(5.5)
Fix(-5.5)
5
-5
Sqr(数值表达式)
Sqr(9)
3
Sgn(数值表达式)
Sgn(5.3)
Sgn(0)
Sgn(-6.5)
1
0
-1
Round(数值表达式1,数值表达式2)
Round(35.57,1)
Round(35.52,0)
35.6
36
函数
功能
示例
结果
Space(数值表达式)
“教学”&Space(2)&”管理”
教学 管理
String(数值表达式,字符表达式)
String(4,”abcdabcdabcd”)
Aaaa
Len(字符表达式)
Len(“教学”&”管理”)
4
Left(字符表达式,数值表达式)
Left(“数据库管理系统”,3)
数据库
Right(字符表达式,数值表达式)
Right(“数据库管理系统”,2)
系统
Mid(字符表达式,数值表达式1[,数值表达式2])
Mid(“abcd”&”efg”,3,3)
cde
Ltrim(字符表达式)
“教学”&(Ltrim(”管理”))
教学管理
Rtrim(字符表达式)
Rtrim(“教学 ”)&”管理”
教学管理
Trim(字符表达式)
Trim(“ 教学 ”)&”管理”
教学管理
函数
含义
例子
Date()
返回当前日期
[日期]< Date()-15,查询15天前的记录
Day(Date)
返回给定日期数据中的1-31的值,表示哪天
DAY(#2005-01-01#),
结果为1。
Month(Date)
返回给定日期数据中1-12的值,表示哪月
Month(#2005-11-01#),
结果为11。
Year(Date)
返回给定日期数据中100-9999的值,表示哪年
Year ([参加工作时间])=1992,查询92年参加工作的记录。
Weekday(Date)
返回给定日期数据中的1-7的值,表示星期几
Weekday(Date()),返回当前日期是星期几。
Hour(Date)
返回给定日期数据中小时0-23的值
函数
功能
示例
结果
Sum(字符表达式)
Sum(成绩)
计算成绩字段列的总和
Avg(字符表达式)
Avg(成绩)
计算成绩字段列的平均值
Count(字符表达式)
Count(*)
Count(成绩)
统计有成绩的学生人数
Max(字符表达式)
Max(成绩)
返回成绩字段列的最大值
Min(字符表达式)
Min(成绩)
返回成绩字段列的最小值
函数
功能
示例
结果
DSum(字符表达式1,字符表达式2[,字符表达式3])
DSum(“成绩”,”选课”,[学号]=“10150226”)
求”选课”表中学号为”10150226”的学生选修课程的总分
DAvg(字符表达式1,字符表达式2[,字符表达式3])
DAvg(“成绩”,”选课”,[课程号]=“TC01”)
求”选课”表中课程号为”TC01”的课程的平均分
DCount(字符表达式1,字符表达式2[,字符表达式3])
DCount(“学号”,”学生”,[性别]=“男”)
统计”学生”表中男同学人数
DMax(字符表达式1,字符表达式2[,字符表达式3])
DMax(“成绩”,”选课”,[课程号]=“TC01”)
求”选课”表中课程号为”TC01”的课程的最高分
DMin(字符表达式1,字符表达式2[,字符表达式3])
DMin(“成绩”,”选课”,[课程号]=“TC01”)
求”选课”表中课程号为”TC01”的课程的最低分
DLookup(字符表达式1,字符表达式2[,字符表达式3])
DLookup(“姓名”,”教师”,[教师编号]=“13001”)
查找”教师”表中教师编号为”13001”的教师的姓名
连接类型对查询结果的影响
内部连接
左联接和右联接
查询实例
选择查询:
例4-7 查询“计算机系学生成绩及格者”的记录,要求查询结果中包含学号、姓名、课程名称和成绩信息,并且按课程号升序排序,每门课程的成绩按降序排序。命名为“例4-7计算机系学生选课成绩”
参数查询:
例4-8 创建一个名为“例4-8按系名称查找教师”的单个参数查询,根据提示输入的“系名称”的内容,查找该系教师的“教师编号”、“姓名”、“系名称”和“学历”信息。