数据库程序设计讲解_第1页
数据库程序设计讲解_第2页
数据库程序设计讲解_第3页
数据库程序设计讲解_第4页
数据库程序设计讲解_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

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

文档简介

1上节课复习学习开发数据库应用系统,应该具备什么基础?需掌握以下四点:基本网络基础

基本数据库基础基本的开发工具.net

和vs

2005/2008 的关系ZJWCHC第2讲开发第一个数据库程序本讲目标3基础构建开发环境开发第一个基于控制台的数据库程序解析该程序开发第一个windows

form 数据库项目解析该程序2.1构建开发环境4Vs

2005是一个集成了多种开发语音的可视化开发环境。Vs

2005开发的数据库应用系统主要基于C/S模式或B/S模式。2.1.1

C/S

模式的开发环境5网络最终用户开发人员Sql

server2005服务器C/S模式应用系统.net

framework可再发行组件包可能需要sql

server

2005客户机Vs

2005.net

framework

sdk(随vs

2005同时安装)sql

server

2005客户机2.1.2

B/S6模式的开发环境网络最终用户开发人员Sql

server2005服务器IE浏览器Vs

2005.net

framework

sdk(随vs

2005同时安装)sql

server

2005客户机Web

服务器ASP

.NET网站

IIS

5.0.net

framework可再发行组件包可能需要sql

server

2005客户机2.2开发第一个基于控制台的数据库程序7在开发过程中会遇到一些新的概念和不理解的地方,后面详细会讲,希望大家不要拘泥于具体细节通过这个开发过程大家初步领略vs

2005在开发.net数据库应用系统的快捷2.2.1创建sql

server

20058用户数据库数据库名称为:db_student数据表为:t_student表结构如下:列名数据类型允许空T_S_NAMECHAR(20)否T_S_SEXCHAR(2)否T_S_NATIONALITYCHAR(10)否T_S_AGEINT否2.2.2开发基于控制台的.net数据库程序9步骤如下:启动vs2005/2008,在【菜单栏】选择【文件】/【新建】/【项目】选项,新建一个项目在接下来的界面中【项目类型】:visual

c#【模板】:选择控制台应用程序【名称】:使用默认生成的“consoleapplication1”单击【确定】按钮在【解决方案资源管理器】面板中选择

program.cs 文件并双击生成代码修改代码调试程序程序执行结果操作演示2.3

解析第1

个.net

数据库程序10Visual

C#c#和C、Java大家有没有C和java的基础知识并不要紧,只需记住C#其实就是吸收了很多程序设计语音(尤其是java和c)之后推出的全新的程序设计语音就够了。Visual

c#大家肯定听说过Visual

c++,visual

basic这样的程序设计工具。很自然,visual

c#就是C#的可视化设计工具。可视化工具的出现使得程序员不必花费过多的精力来设计程序的菜单、界面等基本要素,而是关注于程序的设计和体系结构上。设想一下如果没有可视化工具的出现,那么连显示一个下拉菜单这样的基本操作都需要程序员编制成百上千行语句。2.3.7命名空间11在vs

2005中,为程序开发人员提供了很多已经设计好的类。这些类可以直接被我们在开发程序时实例化,然后直接使用。通过使用这些类,程序开发人员可以大大减轻自己的工作量。怎么用快捷的方式管理这些类,就用到了命名空间的概念,引入命名空间后,后面的程序代码中就可以直接使用这些命名空间中提供的类及其方法,否则将出现错误。许许多多功能的类集中在一起,就是.net

framework中提供的类库。2.3.8设置项目的启动文件12一个项目中可能会有多个文件,那么在启动时先启动哪个文件呢?可以通过设置项目的属性来设定。步骤如下:在【解决方案资源管理器】中选择项目,用鼠标右键单击,在出现的快捷菜单中选择【属性】选项。切换到【应用程序】选项卡,在【启动对象】下拉列表框中可以设置项目的启动文件。演示操作2.3.9program.cs13文件代码分析()过程,然后开始顺序执行。的.exe文件时,.net会自动找到该文件中的sub

main(3)过程GetConnectionString()该过程使用return关键字返回一个固定的字符串其代码结构分为三部分:引用系统命名空间执行入口过程main()main()是一个特殊的过程,它定义了程序开始执行的代码。当执行.net编译后程序代码分析如下大家可能对上述程序中的一些代码还不是很了解,将在以后的学习中逐步深入。大家先感受一下这样一个.net数据库程序设计的实例,掌握其总体结构和基本概念,清楚可能遇到的问题,带着问题开始后续学习或通过MSDN

寻求帮助。学习新技术的一个指导思想:学习一门新技术,先不要拘泥于具体的细节,而是首先要从宏观上、全局上了解技术概貌,然后再深入学习。142.4开发第一个form15数据库项目一般情况下,黑白窗口显示的控制台用来调试程序,现在真正给最终用户使用的数据库项目几乎都采用

windows

form 界面,所以开发windows

form 数据库项目才是我们主要的方向。我们不通过编程来开发第一个windows

form 数据库项目。通过该项目,大家领略vs

2005

在开发数据库项目上的强大优势,然后我们讲这个项目的结构,最后总结出开发

.net数据库项目需要学习的关键技术。162.4.1

开发过程创建空白的windows

form 项目在项目中添加数据源目的是将sql

server

2005

数据库服务器上的DB_STUDENT 数据库的T_STUDENT 表的数据提取出来,并显示在这个窗体form1

上。在【菜单栏】选择【数据】/【添加新数据源】选项【选择数据源类型】界面中【应用程序从哪里获取数据】列表框中选择【数据库】,单击下一步【选择您的数据连接界面中】界面中单击【新建连接】在【添加连接】界面,进行设置,点击【测试连接】连接成功后有提示信息查看生成的连接字符串Data

Source=PC2011030515mmk;InitialCatalog=DB_STUDENT;Integrated

Security=True(7)连接字符串进行保存(8)选择数据库对象界面(9)【项目设计】界面(10)运行结果演示操作2.4.2项目的执行流程17Program.cs

从main方法开始执行、运行一个项Ap目pl属ic性at设io置n.启Ru动n(程ne序w

F为orPmr1o(g)r)a;m.csT_STUDENTBindingNavigatorSaveItem_Click()方法:窗体上单f击or保m1存按窗钮体后的代码From1.cs 首先运行form1_load ()方法,该方法提取数据送入数据集对象db_STUDENTDataSet 的数据表T_STUDENT

中。一旦发生更新数据,则调用

t_STUDENTBindingNavigatorSaveITEM_Click方法完成更新InFoirtmi_alloiazde(C)o方mp法on:en该t方(方)法:定类义F了or启m1动的并构显造示方窗法体,时初首始先化执时行将的在代窗码体。上安装定义的设置参数产生各种控件T_STUDENTBindingNavigatorSaveItem_Click()

方法18将用户在窗体中修改的数据写入到内存中的DataSet 数据集对象中。本实例的数据集对象是dB_STUDENTDataSet.this.tSTUDENTBindingSource.EndEdit();通过表适配器对象t_STUDENTTableAdapter

的update

方法将客户机内存中的数据集对象提交给

SQLServer

2005 服务器。This.t_STUDENTTableAdapter.Update(

this.dB_STUDENTDataSet.T_STUDENT

);Form_Load()

方法19调用表适配器对象的

Fill方法从SQL

Server2005 数据库中提取出数据,填充到客户机内存中的数据集对象的

T_STUDENT 表中。中。private

void

Form1_Load(object

sender,

EventArgs

e){//这行代码将数据加载到表“dB_STUDENTDataSet.T_STUDENT”this.t_STUDENTTableAdapter.Fill(this.dB_STUDENTDataSet.T_STUDENT);}2.4.3项目中数据的流向20作为数据库项目,完成的是将数据从服务器上提取出来显示、修改,将修改后的数据又反馈回服务器的数据库中。作为开发人员,必须清楚数据在项目的执行过程中是如何流动的,也就是说,在窗体如此众多的与数据库有关的对象中,它们是如何有机地联系在一起的,它们之间通过什么联系在一起,数据在这些对象之间是如何流动的?T_studentBindingsource21t_STUDENTBindingNavigatorDB_STUDENT数据库T_S_AGETextBoxT_S_NATIONALITYTextBoxT_S_SEXTextBoxT_S_NAMETextBox显示数据的文本框绑定数据操作数据表单Form1操作数据显示数据dB_STUDENTDataSet

项目中数据的T_流st向udentTableAdapter内存中存储数据 提取数据重要的四个对象223.t_STUDENTBindingSource对象:绑定数据集对象和显示数据的4个文本框对象,以及T_studentBindingNavigator对象4.t_STUDENTBindingNavigator对象:完成数据的操作功能1.t_STUDENTTableAdapter对象:完成从SQL

Server

2005 数据库中提取数据到数据集对象dB_STUDENTDataSet的功能。数据集对象修改后的数据还要通过该对象最后提交到数据库中。2.

dB_STUDENTDataSet

对象:在客户机内存上存储数据库的数据1.t_STUDENTTableAdapter

对象23该对象是表适配器对象,完成将数据库DB_STUDENT 中的数据提取出来,送入客户机上的内存如果把SQL

Server2005服务器上的数据库比喻为水塔中的水的话,那么,表适配器对象就好比是水塔的开关,这个开关是用于控制水塔的水如何流出的,同时更新后的数据也要通过该对象才能提交到数据库中。表适配器对象到底是什么呢?(演示操作)表适配器对象实际上就是查询数据的Select语句而已,通过这些语句就能够控制提取什么样的数据2.dB_STUDENTDataSet

对象24数据提取出来之后被送入客户机的内存中,因为操作系统首先都是在内存中操作数据的。那么客户机的内存中是如何来存储SQL

Server

2005 服务器上流入的数据的呢?DataSet(数据集)被用于在客户机内存上存储数据库的数据。我们可以把该对象比喻为水塔流出的水到达每个家庭(客户机)后的存储水的容器。表示数据集对象中表的方法this.t_STdUBD_ESNTUTDaEbNlTeDAadtapStetr.TF_iSlTlU(DtEhNiTs.dB_STUDENTDataSet.T_STU

DENT);在Form1.cs文件中的Form_Load()方法的以下代码就完成了将提取出来的数据填充到数据集对象的表中。3.t_STUDENTBindingSource

对象25数据集对象中表的数据如何才能显示到4个文本框中呢?这就是数据绑定对象来完成的功能查看该对象的【属性】面板,有两个重要的属性:DataSource

:设置绑定对象使用的数据集对象;DataMember :设置了绑定对象使用的数据集对象中的数据对象,这里是T_STUDENT 表。绑定对象来负责通过这两个属性的设置,数据集对象的表的数据就由和显示数据数据的对象打交道4.t_STUDENTBindingNavigator26对象某个按钮。CountItem:计数的按钮DeleteItem:删除按钮MoveFirstItem:移动到首记录的按钮MoveLastItem:移动到尾记录的按钮MoveNextItem :移动到下M记ov录eP的re按vi钮ousItem :移动到上记录的按钮PositionItem:位置按钮如何操作数据集对象中表的数据呢?窗体Form1 上有一个绑定导航对象,该对象显示了若干基本操作的快捷按钮。查看该对象的【属性】面板,有几个重要的属性:BindingSource:设置绑定导航对象使用的绑定数据对象这些按钮所对应的执行代码是在AddNewItSeymste:m.添Win加do新ws数.F据orm时s.对Bi应nd的ing快Na捷vi按ga钮tor是中绑定导航对象上的定义的,不需要单独编写代码4.t_STUDENTBindingNavigator

对象27BindingNavigator

对象中还有一个非常重要的快捷按钮【保存】是不在【属性】面板中设置。其功能是通过Form1.cs 文件中以下的代码实现的。关键代码回顾28//窗体验证

this.Validate();//在窗体中修改的数据写入到内存DataSet数据集中

this.t_STUDENTBindingSource.EndEdit();//将客

温馨提示

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

评论

0/150

提交评论