VB.NET程序设计教程目录VB程序设计实习第一次理论课教师:刘丽霞2010年8月VB.NET程序设计教程目录2课程简介•基于项目的学习,掌握数据编程技术,加深VisualBasic语言及其编程技术,使学生了解高级程序设计语言的结构,掌握基本的程序设计过程和技巧,掌握基本的分析问题和利用计算机求解问题的能力,具备初步的高级语言程序设计能力。VB.NET程序设计教程目录3基于项目的学习•什么是基于项目的学习?–PBL(ProjectBasedLearning)•该课程形态的核心是什么?–结合生活实际,具体项目,解决实际问题VB.NET程序设计教程目录4教学计划上课计划:第1次:数据库应用基础+课堂作业第2次:数据库应用基础+课堂作业第3次:复习与提高--面向对象的程序设计、文件、图形、数据库等第4次:综合复习及案例展示上机计划:第1次:复习+数据库实验第2次:数据库实验+测试第3次:数据库实验+测试第4次:小组项目源程序+实习报告+个人论文整理第5次:上机考试•时间:(军工)8月30日——9月10日VB.NET程序设计教程目录5课表•上课地点:一教250•上机地点:现代化中心四楼机房•分组表:组长填好,打印后在上机时递交。VB.NET程序设计教程目录6教材•《大学程序设计实训教程》铁道教育出版社VB.NET程序设计教程目录7注意:•没有上过程序设计的学生不能上实习课,如果上了成绩不合格的后果自负。VB.NET程序设计教程目录8作业递交•实习任务:每次上机结束时上传•小组项目:课下完成,最后一次上机时提交VB.NET程序设计教程目录9实习成绩考核指标•出勤率•平时的上机实习作业•小组项目作品源程序•实习报告•个人论文•考核VB.NET程序设计教程目录•由学生自由组合3-5人为一个开发小组,每个组在《短学期实训项目》中选择一个题目作为开发项目,按软件项目的开发流程整理文档,编写程序,将文档整理成电子档(软件计划书、测试报告、用户手册)•提交时间:9月9日交任课教师。10VB.NET程序设计教程目录11与教师的沟通方式•邮件:–教师邮箱:liulixia@usst.edu.cn–写明:学号和姓名•电话:13661936799VB.NET程序设计教程目录12如何开发项目第一步组队团队协作,优势互补的原则3-5人,其中一人为组长。每人必须且只能参加一个队。VB.NET程序设计教程目录13如何开发项目第二步选题(参考:项目列表)队员讨论决定选题保证最终能正常运行。VB.NET程序设计教程目录14如何开发项目第三步分工协作(分工合作,根据分工评价)分工方法例如:界面设计、编程、素材搜集、文档资料整理界面设计、编程、调试和测试、用户使用手册等VB.NET程序设计教程目录15如何开发项目第四步从分解到整合按功能模块,分工合作主要课下完成保证最终能够运行VB.NET程序设计教程目录16如何开发项目软件开发计划软件设计文档核心程序段软件测试报告用户使用手册改进设想VB.NET程序设计教程目录17典型案例•社团管理系统实习报告•项目列表VB.NET程序设计教程目录18第十一章数据库应用程序开发11.1数据库概述11.2ADO数据控件11.3记录集对象Recordset11.4使用SQL查询数据库11.5报表制作11.6综合应用VB.NET程序设计教程目录1911.1数据库概述数据库以一定的组织方式将相关的数据组织在一起,存放在计算机外存储器,能为多个用户共享,与应用程序彼此独立的一组数据的集合。VB.NET程序设计教程目录20数据库软件VisualBasic支持多种类型的数据库,Access数据库FoxPro数据库MicrosoftExcelSQLServerOracle等。VB.NET程序设计教程目录2111.1.1关系型数据库模型关系型数据库模型将数据用表的集合来表示。通过建立简单表之间的关系来定义结构,而不是根据数据的物理存储方式建立数据中的关系。不管表在数据库文件中的物理存储方式如何,都可以把它看作一组行和列。一个数据库可包含多张表数据库表VB.NET程序设计教程目录22关系型数据库表是有关信息的逻辑组,行被称为记录,列则被称为字段。主键记录字段VB.NET程序设计教程目录23Access数据库--案例•Student.mdb的打开和设计•创建数据库表,设计数据库表VB.NET程序设计教程目录24上机实习任务•操作并讲解VB.NET程序设计教程目录2511.1.2使用SQL查询数据库结构化查询语言(StructureQueryLanguage,SQL)是操作关系数据库的工业标准语言。通过SQL命令,可以从数据库的多个表中获取数据,也可对数据进行更新操作。SQL的主要语句:从数据库中删除一个表数据定义DRUP在数据库中建立一个新表数据定义CREATE用来改变特定记录和字段的值数据操作UPDATE向表中插入一条记录数据操作INSERT从数据表中删除记录数据操作DELETE在数据库中查找满足特定条件的记录数据查询SELECT描述分类命令.VB.NET程序设计教程目录26SELECT语句1.SELECT语句的基本语法形式SELECT目标表达式列表FROM表名[WHERE查询条件][GROUPBY分组字段HAVING分组条件][ORDERBY排序关键字段[ASC|DESC]]它包含4部分,其中SELECT和FROM子句是必须的,通过使用SELECT语句返回一个记录集。例在学生基本情况表中查询物理系的学生情况:SELECT*FROM基本情况WHERE专业=物理VB.NET程序设计教程目录27SELECT*FROM基本情况WHERE专业=物理VB.NET程序设计教程目录28SELECT语句-输出表达式目标表达式为查询结果要显示的字段清单(字段间用逗号分开)。数据的显示顺序由字段清单的顺序决定。可用星号*代表所有字段;可用AS短语指定字段别名;可通过构造表达式对原始数据进行复杂的运算处理,产生查询结果。例如,根据出生年月计算每个学生的年龄SELECT姓名,(Year(Date())-Year(出生年月))AS年龄FROM基本情况VB.NET程序设计教程目录29SELECT语句-查询条件WHERE子句用于限制记录的选择例如,查询1985-01-01到1986-12-31之间出生的学生:SELECT*FROM基本情况WHERE出生年月BETWEEN#1985-01-01#AND#1986-12-31#要枚举出若干项进行查询,使用运算符IN例如,查询物理系和数学系的学生数据:SELECT*FROM基本情况WHERE专业IN(物理,数学)等价于:SELECT*FROM基本情况WHERE专业=物理OR专业=数学VB.NET程序设计教程目录30课堂作业11.查询计算机专业的女同学的信息2.查询“学号”为50303的同学VB.NET程序设计教程目录31SELECT语句-合计函数合计函数用于对记录集进行统计返回指定字段中的最小值MIN返回指定字段中的最大值MAX返回特定字段中所有值的总和SUM返回选定记录的个数COUNT获得特定字段中的值的平均数AVG描述合计函数例如,统计物理系学生的人数:SELECTCOUNT(*)AS学生人数FROM基本情况WHERE专业=“物理”COUNT(*)在统计时包含值为空值的记录COUNT(表达式)统计时忽略表达式值为空值的记录VB.NET程序设计教程目录32SELECT语句-分组GROUPBY子句将指定字段列表中有相同值的记录合并成一条记录。例如,计算每个学生各门课程平均分:SELECT学号,AVG(成绩)AS平均分FROM成绩表GROUPBY学号要对分组后的数据进行过滤,可在GROUPBY子句后结合HAVING子句在分组中选择。例如,查询平均分在80分以上的学生:SELECT学号,AVG(成绩)AS平均分FROM成绩表GROUPBY学号HAVINGAVG(成绩)=80VB.NET程序设计教程目录33SELECT语句-排序ORDERBY子句决定了查询结果的排列顺序在ORDERBY子句中,可以指定一个或多个字段作为排序关键字,ASC选项代表升序,DESC代表降序。VB.NET程序设计教程目录34SELECT语句-多表连接若查询的数据分布在多个表中,则必须建立连接查询:SELECT目标表达式列表FROM表1,表2WHERE表1.字段=表2.字段例如,学生成绩表中只有学号,如何在查看学生成绩的同时能够直观地看到学生姓名?这就要在两表之间建立连接。SQL语句如下:SELECT基本情况.姓名,成绩表.*FROM基本情况,成绩表WHERE成绩表.学号=基本情况.学号VB.NET程序设计教程目录案例•现有某人的名片数据库cards.mdb中有一记录朋友信息的数据表friends,包括编号、姓名、公司、职务、公司地址、电话、手机、E-mail,要求在VB.NET2005环境下能按图9-1-1窗体显示的格式来浏览查询朋友信息。要求能使用命令按钮来实现记录的向前、向后移动,文本框只用于浏览数据,不允许修改。