Download presentation
Presentation is loading. Please wait.
1
第五讲 酒店客房管理系统(一) 教育部“十二五”职业教育国家规划教材
《Visual C#程序设计与软件项目实训》电子工业出版社 郑伟 谭恒松 编著 ISBN: 教材网站: 第五讲 酒店客房管理系统(一)
2
目录 任务:系统功能总体设计 任务:建立系统数据库 任务:创建公共类DBHelper
3
任务:系统功能总体设计 系统功能结构图 酒店客房管理系统 宾客登记 宾客预定 取消预定 收银结算 退房结算 补交押金 信息查询 宾客查询
房态查询 预订查询 客房管理 客房添加 用户管理 添加用户 管理用户
4
任务:系统功能总体设计 系统窗体
5
酒店客房管理系统—界面
6
酒店客房管理系统—界面
7
酒店客房管理系统—界面
8
酒店客房管理系统—界面
9
酒店客房管理系统—界面
10
酒店客房管理系统—界面
11
酒店客房管理系统—界面
12
酒店客房管理系统—界面
13
酒店客房管理系统—界面
14
酒店客房管理系统—界面
15
酒店客房管理系统—界面
16
酒店客房管理系统—界面
17
酒店客房管理系统—界面
18
酒店客房管理系统—界面
19
任务:建立系统数据库 数据库包含5个数据表,分别是用户表UserInfo、客房信息表RoomInfo、宾客信息表CustomerInfo、历史记录表Record、宾客预订信息表BookInfo。
20
数据库结构
21
数据库结构
22
数据库结构
23
任务:创建公共类DBHelper 涉及知识点 面向对象程序设计 Connection对象 Command对象 DataReader对象
ADO.NET Connection对象 Command对象 DataReader对象 DataAdapter和Dataset对象
24
面向对象程序设计 对象(Object)是一件事、一个实体、一个名词,可以获得的东西,可以想象有自己的标识的任何东西。简单地说,一切都是对象。例如:人、电脑、桌子等。 类(Class)实际上是对某种类型的对象定义变量和方法的原型。它表示对现实生活中一类具有共同特征的事物的抽象,是面向对象编程的基础。 类的作用类似于蓝图,指定该类型可以进行哪些操作。从本质上说,对象是按照此蓝图分配和配置的内存块。
25
类 面向对象程序设计的主要工作就是设计类,声明类的语法格式如下: [类修饰符] class 类名[:基类] { …… }
例如,定义一个客房类,代码如下: public class RoomInfo //客房类的成员,可以是字段、方法、属性等
26
访问修饰符
27
类的成员
28
ADO.NET概述 ADO.NET 是一组向 .NET Framework 程序员公开数据访问服务的类。 ADO.NET 结构
29
Connection对象
30
Connection对象 首先,要引用SqlClient。 using System.Data.SqlClient;
其次,要定义SqlConnection。 //数据库连接字符串 private static string connectionString = "Data Source =.; Initial Catalog = Hotel; Integrated Security = SSPI"; SqlConnection connection = new SqlConnection(connectionString);//定义SqlConnection connection.Open();//打开连接
31
Command对象 使用 Command 对象可以访问用于返回数据、修改数据、运行存储过程以及发送或检索参数信息的数据库命令。
32
Command对象 SqlCommand的使用示例
SqlCommand cmd = new SqlCommand(SQLString, connection);//定义SqlCommand cmd.ExecuteNonQuery();//执行SQL语句
33
DataReader对象 使用 DataReader 对象的 Read 方法可从查询结果中获取行。 通过向 DataReader 传递列的名称或序号引用,可以访问返回行的每一列。 SqlDataReader的使用方法如下代码所示: SqlCommand command = new SqlCommand("SELECT * FROM UserInfo", connection); connection.Open(); SqlDataReader reader = command.ExecuteReader();
34
DataAdapter和Dataset对象
DataAdapter 是 DataSet 和 数据源之间的桥接器,用于检索和保存数据。DataAdapter 通过对数据源使用适当的 Transact-SQL 语句映射 Fill和 Update来提供这一桥接。
35
DataAdapter和Dataset对象
ADO.NET DataSet 是数据的一种内存驻留表示形式,无论它包含的数据来自什么数据源,都会提供一致的关系编程模型。DataSet 表示整个数据集,其中包含对数据进行包含、排序和约束的表以及表间的关系。
36
DataAdapter和Dataset对象
通过SqlDataAdapter向DataSet填充数据的示例代码如下: SqlConnection connection = new SqlConnection(connectionString); //定义SqlConnection DataSet ds = new DataSet();//定义DataSet connection.Open();//打开连接 SqlDataAdapter command = new SqlDataAdapter(SQLString, connection);//定义SqlDataAdapter command.Fill(ds, "ds");//填充到ds
37
创建公共类DBHelper using System; using System.Collections.Generic;
using System.Linq; using System.Text; using System.Data; using System.Data.SqlClient; using System.Windows.Forms; namespace HotelManage {
38
创建公共类DBHelper class DBHelper { //数据库连接字符串
private static string connectionString = "Data Source =.; Initial Catalog = Hotel; Integrated Security = SSPI"; /// <summary> /// 执行SQL语句,返回影响的记录数 /// </summary> /// <param name="SQLString">SQL语句</param> /// <returns>影响的记录数</returns>
39
创建公共类DBHelper public static int ExecuteSql(string SQLString) {
SqlConnection connection = new SqlConnection(connectionString);//定义SqlConnection SqlCommand cmd = new SqlCommand(SQLString, connection);//定义SqlCommand try connection.Open();//打开连接 int rows = cmd.ExecuteNonQuery();//执行SQL语句 return rows;//返还影响的记录数 } catch (System.Data.SqlClient.SqlException e) connection.Close();//关闭连接 throw e;
40
创建公共类DBHelper /// <summary> /// 执行查询语句,返回DataSet
/// <param name="SQLString">查询语句</param> /// <returns>DataSet</returns> public static DataSet GetDataSet(string SQLString) { SqlConnection connection = new SqlConnection(connectionString); //定义SqlConnection DataSet ds = new DataSet();//定义DataSet
41
创建公共类DBHelper try { connection.Open();//打开连接
SqlDataAdapter command = new SqlDataAdapter(SQLString, connection);//定义SqlDataAdapter command.Fill(ds, "ds");//填充到ds } catch (System.Data.SqlClient.SqlException ex) connection.Close();//关闭连接 throw new Exception(ex.Message); return ds;
42
THANK YOU
Similar presentations