项目简历系统数据库应用PPT课件_第1页
项目简历系统数据库应用PPT课件_第2页
项目简历系统数据库应用PPT课件_第3页
项目简历系统数据库应用PPT课件_第4页
项目简历系统数据库应用PPT课件_第5页
已阅读5页,还剩39页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1. 了解ADO.NET的相关概念。2. 会进行数据库连接相;3. 能使用数据库操作类定义数据操作方法;4. 能完成简单控件与复杂控件的数据绑定;5. 能完成简历管理系统的数据连接类与登录类。教学目标教学目标第1页/共44页1.简历管理系统中数据信息如何与系统的关联2.数据如何从界面传递到数据库3.从数据库传递到界面6.1 6.1 知识储备知识储备数据访问模型第2页/共44页ADO.NET3.5中提供了以下四种数据库提供程序1. SQL Server .NET Framework数据提供程序2. OLE DB .NET Framework数据提供程序3. ODBC .NET Framework

2、数据提供程序4. Oracle .NET Framework数据提供程序6.1.1 .NET Framework6.1.1 .NET Framework数据提供程序数据提供程序第3页/共44页1. SqlConnection类 Sqlconnection类用于表示到 SQL Server 数据库的打开的连接。该类主要有两个构造函数: public SqlConnection() 必须设置SqlConnection对象的ConnectionString属性,如下面的代码: SqlConnection conn = new SqlConnection(); conn.ConnectionStrin

3、g = Integrated Security=SSPI;Database= resume; Server=.sqlExpress;6.1.2 6.1.2 数据库访问类数据库访问类第4页/共44页 public SqlConnection(string connectionString)具体如下面的代码:SqlConnection conn = new SqlConnection(Integrated Security=SSPI;Database= resume; Server=(local);); 6.1.2 数据库访问类数据库访问类第5页/共44页已知数据连接对象conn,可有3种连接数据

4、方式。 使用数据库文件所在位置进行数据库配置,适用于数据库服务器没开启和开启的情况。conn.ConnectionString = Data Source=(local); AttachDbFilename= D:数据库 resume.mdf;Integrated Security=True; Connect Timeout=60; User Instance=True;也可以为:conn.ConnectionString = Data Source=(local); AttachDbFilename= D:数据库 resume.mdf;Integrated Security=True; Co

5、nnect Timeout=60; User Instance=True;6.1.2 数据库访问类第6页/共44页 在项目中使用添加现有项的方法添加数据库文件得到的连接字符串,适用于数据库服务器没开启和开启的情况。得到的连接字符串为: conn.ConnectionString =Data Source=.SQLEXPRESS;AttachDbFilename=D:数据库 resume.mdf;Integrated Security=True; ; 6.1.2 数据库访问类数据库访问类第7页/共44页 在数据库服务器开启的情况下,可以使用Windows集成安全身份验证,例如:c o n n .

6、 C o n n e c t i o n S t r i n g = I n t e g r a t e d S e c u r i t y = S S P I ; D a t a b a s e = r e s u m e ; Server=localhost;或者:conn.ConnectionString=Trusted_connection=true;Database= resume;Server=localhost;或者:conn.ConnectionString=Initial Catalog= resume;Data Source=localhost;Integrated Sec

7、urity=SSPI;);6.1.2 数据库访问类数据库访问类第8页/共44页 在数据库服务器开启的情况下,另一种是在连接字符串中指定服务器名、用户id、用户口令、数据库名等信息。例如:conn.ConnectionString=ser ver=localhost;uid=sa; pwd=123; database=resume; 6.1.2 数据库访问类数据库访问类第9页/共44页 2. SqlCommand类 一般情况下,对数据的插入、删除、查询、更新等操作通过SqlComand类型的对象来实现。常用的构造函数有以下3个:public SqlCommand();public SqlComm

8、and(string cmdtext);Public SqlCommand(string cmdtext, S q l C o n n e c t i o n connection); 6.1.2 数据库访问类数据库访问类第10页/共44页假如已知SqlConnetion对象conn,SqlCommand对象的声明方法如下:SqlCommand comd = new SqlCommand();comd.Connection = conn ;或者:string sql = select * from student ;SqlCommand comd = new SqlCommand(sql);c

9、omd.Connection = conn;或者:string s = select * from student ;SqlCommand comd = new SqlCommand(s,conn); 6.1.2 数据库访问类数据库访问类第11页/共44页SqlCommand类实现了对数据库的操作,在保持连接的方式访问并操作数据库的一般步骤为: 创建SqlConnection的实例; 创建SqlCommand的实例; 打开连接后,将SqlCommand关联,同时要给SqlCommand的ComandText赋值为合法的sql语句; 执行命令; 关闭连接。6.1.2 数据库访问类数据库访问类第1

10、2页/共44页SqlCommand类常用的操作数据库的方法有以下3个。(1) ExecuteNonQuery() 方法(2) ExecuteReader()方法(3) ExecuteScaler()方法6.1.2 数据库访问类数据库访问类第13页/共44页3. SqlDataReader类 用于存放Command对象检索得到的数据集。该类不 能 使 用 构 造 函 数 实 例 化 , 若 要 创 建SqlDataReader,必须调用SqlCommand对象的ExecuteReader方法。6.1.2 数据库访问类数据库访问类第14页/共44页【例6-1】完成一个Windows应用程序,实现简

11、历管理系统中用户信息的注册功能,并且要求昵称n i c k n a m e 不 能 重 复 , 并 实 现 使 用SqlDataReader类查询某一个用户的信息。分析:这里我们使用Windows应用程序是实现。在项目中添加Users类,类代码见4.5。(1)添加用户信息,用户信息stuid为标识字段,即自动增长,要添加的字段包括昵称nickname以及密码 p a s swo r d , 需 要 添 加 用 户 添 加 方 法A d d U s e r , 需 要 传 递 的 参 数 有 两 个 :nickname的值及password的值。也可以封装为Users类型的对象。6.1.2 数据

12、库访问类数据库访问类第15页/共44页(2)保证昵称唯一,对要添加的昵称进行数据库检查;(3)实现根据昵称查询,形式参数为nickname的值,返回一个Users类型的对象。判断时,根据stuid的值进行判断,因为stuid是自动增长字段,数据库中如果有记录,最小值为1,所以如果该对象的stuid大于0,则对象不为空,否则,使用改昵称的对象存在。6.1.2 数据库访问类数据库访问类第16页/共44页实现步骤如下: 建立Windows应用程序,添加“Users”类。 设计窗体如下: 编写代码 运行程序,检验结果。6.1.2 数据库访问类数据库访问类图6-1-1 窗体设计第17页/共44页4. S

13、qlDataAdapter类 SqlDataAdapter隐式使用SqlConnection、SqlCommand类型的对象填充DataSet对象,完成后自动断开与数据库服务器的连接。 使用这种方式操作数据库的一般步骤为:1) 创建SqlConnection的实例2) 创建SqlComand实例6.1.2 数据库访问类数据库访问类第18页/共44页3) 创建SqlDataAdapter的实例,并与SqlComand实例关联,需要的的话,通过SqlCommandBuilder设置InsertCommand、UpdateCommand和DeleteComman属性,以便实现数据的更新;4) 创建D

14、ataSet的实例;5) 使用Fill方法将数据库中的表填充到DataSet的表中;6) 用DataGridView或其他控件对象编辑或显示数据;7 需要的话,使用Update方法更新数据库。6.1.2 数据库访问类数据库访问类第19页/共44页5. DataTable类 DataTable提供了对表中数据的各种操作,常作为 DataSet的成员使用。 DataTable类型的对象可以通过构造函数创建,也可用 DataAdapter对象的 Fill 方法或 FillSchema 方法在 DataSet中创建。 DataTable对象也包括行、列以及约束等属性。初次创建需要创建DataColum

15、n的列对象,每一行都是一个DataRow类型的对象。6.1.2 数据库访问类数据库访问类第20页/共44页DataTable类型的对象创建流程如下:(1)创建DataTable对象(2)在DataTable对象中添加列(3)设置DataTable对象的主键(4)在DataTable对象中创建行6.1.2 数据库访问类数据库访问类第21页/共44页【例6-2】创建Student表,包括id、name、password三个字段,并添加数据记录,将结果显示在界面的DataGridView控件上。分析:生成student表,并添加3个string类型的字段,添加一条或多条数据记录,然后,设置DataG

16、ridView控件的DataSource属性为表即可。6.1.2 数据库访问类数据库访问类图6-1-2 运行结果第22页/共44页6. Dataset类 DataSet类型的对象相当于一个二维的数据库,用于存放多张DataTable类型的表格,一般情况下,用于实现数据的浏览等相关操作。 创建DataSet对象 DataSet dataset= new DataSet(); 填充DataSet对象 调用SqlDataAdapter对象的Fill方法将数据填充到DataSet中的某个表中。6.1.2 数据库访问类数据库访问类第23页/共44页【例6-3】设计Windows应用程序,实现resume

17、数据库中addressbook表的数据显示在dataGridView控件上,并能通过dataGridView控件实现数据更新。分析:这里使用两种方式实现。 一是使用代码实现SqlConnection、SqlCommand、SqlDataAdapter、以及DataSet; 一种是使用工具箱中的控件进行实现。6.1.2 数据库访问类数据库访问类第24页/共44页数据绑定技术就是把已经打开的数据集中某个或者某些字段绑定到组件的某些属性上面的一种技术。使用数据绑定,可以方便的对已打开的数据集中的记录进行浏览、删除、插入等具体的数据操作、处理。可以设计时或运行时绑定。根据控件实现数据绑定的复杂度,分为

18、简单数据绑定与复杂型数据绑定。数据绑定一般步骤: 连接数据库,得到DataSet类型的对象。 根据不同组件,采用不同的数据绑定。6.1.3 数据绑定数据绑定第25页/共44页1.Windows窗体的DataGridView控件(1)通过代码实现绑定方法如下。设置DataSource属性为包含要绑定到的DataTable对 象。也可以BindingSource对象绑定到数据表上。 在窗体中添加代码来填充数据集,例如: dataset1 = new DataSet(); dapter.Fill(dataset1,student); dataGridView1.DataSource= dataset

19、.Tables0;或者 dataset1 = new DataSet(); dapter.Fill(dataset1,student); BindingSource binds = new BindingSource(); binds.DataSource =dataset1.Tables0; dataGridView1.DataSource=binds;6.1.3 数据绑定数据绑定第26页/共44页(2)通过设计器中将数据绑定到DataGridView的方法 设置DataSource属性为包含要绑定到的数据项的对象。 如果数据集包含相关表(即,如果它包含关系对象),请将DataMember属

20、性设置为表的名称。 编写代码来填充数据集。6.1.3 数据绑定数据绑定第27页/共44页2. BindingNavigator的数据绑定 BindingNavigator控件是用于数据处理的导航条。(1)通过BindingNavigator控件的BindingSource属性进行数据绑定。(2)代码实现绑定,如下: dataset1 = new DataSet(); dapter.Fill(dataset1,student); BindingSource binds = new BindingSource(); binds.DataSource =dataset1.Tables0; dataG

21、ridView1.DataSource=binds;6.1.3 数据绑定数据绑定第28页/共44页3. TextBox与Label控件的数据绑定 此类控件的数据绑定的方法是把要获取的数据显示在“Text”属性中。通常使用以下两种代码编写方法实现数据绑定:(1)使用数据集中表的字段直接绑定,如下面的代码: label1.DataBindings.Add(Text, dataset.Tables0, stuid); textBox1.DataBindings.Add(Text, dataset.Tables0, stuname);6.1.3 数据绑定数据绑定第29页/共44页(2)使用Bindin

22、gSource类型的对象实现数据绑定,如 下面的代码:BindingSource bindingsource = new BindingSource(); bindingsource.DataSource = dataset.Tablesstudent; label1.DataBindings.Add(Text, bindingsource, stuid);textBox1.DataBindings.Add(“Text”, bindingsource, “stuname);6.1.3 数据绑定数据绑定第30页/共44页4. ListBox和ComboBox控件的数据绑定 这种类型的控件要绑定的

23、属性有3个:“DataSource”(显示数据集)、“DisplayMember”(显示的数据集中的字段)、“ValueMember”(读取该控件时实际使用值) 。 使用ListBox实现数据绑定,常用以下两种代码编写方法实现数据绑定:6.1.3 数据绑定数据绑定第31页/共44页(1)使用数据集中表的字段直接绑定,如下代码: listBox1.DataSource = dataset.Tables0; listBox1.DisplayMember dataset.Tables0.Columns1.ToString(); listBox1.ValueMember = dataset.Table

24、s0.Columns0.ToString();(2)使用BindingSource对象实现数据绑定,如下代码: BindingSource bindingsource = new BindingSource(); bindingsource.DataSource = dataset.Tablesstudent; listBox1.DataSource = bindingsource; listBox1.DisplayMember = dataset.Tables0.Columns1.ToString(); listBox1.ValueMember = dataset.Tables0.Colum

25、ns1.ToString();6.1.3 数据绑定数据绑定第32页/共44页【例6-4】通过属性设置与代码编写两种方式实现resume数据中addressbook表信息的数据绑定。6.1.3 数据绑定数据绑定第33页/共44页6.2 6.2 任务任务1 1 实现公用的数据连接和处理类实现公用的数据连接和处理类DBConnDBConn第34页/共44页6.2 任务1 实现简历系统的公用的数据连 接和处理类DBConn第35页/共44页 在简历管理系统中,需要处理数据操作,进行查询、修改、删除、增加等功能,这些功能都需要连接同一个数据库文件,并且执行时不同的查询需要相同类型的查询结果时,只是传递的

26、SQL语句不同,返回值可能是一个数据集合、也可能是一个数据项;修改、删除、增加都属于数据的更新操作,都可以通过SqlCommand类实例的ExecuteNonQuery方法实现。把这些方法加以提取,设计数据访问类,提高代码重用性,并且提高可读性。6.2.1 任务分析任务分析第36页/共44页 (1)在类库JianLiClass项目中添加类DBConn,定义访问控制为public,并且添加用于数据连接的字符串。(2)在类DBConn中,添加检索方法SelectReader()。(3)实现获取DataSet数据集的检索方法。(4)使用SqlCommand类实例的ExecuteNonQuery方法实现更新数据库操作。6.2.2 任务实施任务实施第37页/共44页6.3.1 任务分析 学生登录系统时,通过编号与密码进行登录,客户可以直接登录。那么学生登录时,要查找Users表中是否存在学生信息,即根据学生的stuid以及Password进行验证。6.3 任务2实现登录类LoginDAO第38页/共44页 在简历管理系统中,需要处理数据操作,进行查询、修改、删除、增加等功能,这些功能都需要连接同一个数据库文件,并且执行时不同的查询需要相同类型的查询结果时,只是传递的SQL语句不同,返回值可能是一个数据集合、也可能

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论