版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
数据库编程主要内容1、数据库基础2、数据访问技术3、ADO.net数据访问模型1、数据库基础数据库(DB)存放数据的仓库,但这些数据之间有一定的关联,并按照一定的格式存放。数据包括数字、文本、图像、音频和视频等。数据库管理系统(DBMS)是管理数据库的系统,具备以下功能:数据定义,数据操作,如对数据表的插入、删除、修改、查询等数据完整性检查,保证输入的数据满足相应约束条件数据库的安全保护,只有授权用户才能访问数据库的并发控制,多个程序可同时访问数据数据库的故障恢复,网络访问,简单的存取数据库信息的接口和工具等。数据库系统由数据、数据库、数据库管理系统、操作数据库的应用程序,加上支撑的硬件平台、软件平台以及与数据库有关的人员共同组成。数据库的组织结构数据库
表
记录
字段数据库表间的关联关系表之间的关联是现实生活中事物之间关联关系的模拟。主键外键在实际的数据库设计中,经常使用“自增字段”来作为表的主键。1、数据库基础创建数据库和表CreatedatabaseXSCJcreatetable<表名>(<列名><数据类型>[列级完整性约束条件]
[,<列名><数据类型>[列级完整性约束条件]
.........
[,<表级完整性约束条件>]);createtableXSB什么是SQLSQL(StructuredQueryLanguage,结构化查询语言),使用它来从数据库中提取并操作各种数据。7SQL命令的分类SQL命令可以分成以下三类:DML(DataManipulationLanguage,数据操作语言):用于检索或修改数据。DDL(DataDefinitionLanguage,数据定义语言):用于定义数据的结构,例如,创建、修改或删除数据库对象。DCL(DataControlLanguage,数据控制语言):用于定义数据库用户的权限。8常用的SQL命令Select:选择数据Insert:插入数据Update:更新数据Delete:删除数据9数据操作createtableXSB(XH char(6) NOTNULLPRIMARYKEY,XM char(8) NOTNULL,XB bit NULLDEFAULT1,CSSJ date NULL,ZY char(12) NULL,ZXF int NULL,BZ varchar(500)NOTNULL,)数据操作插入数据INSERTINTO<表名>[(<列名1>,<列名2>,<列名3>…)] VALUES(<列名1>,<列名2>,<列名3>…)实例:INSERTINTOXSB(XH,XM,XB,CSSJ,ZY,ZXF)VALUES(‘081101’,’王琳琳’,1,’1990-02-10’,’计算机’,50)或者:INSERTINTOXSBVALUES(‘081101’,’王琳琳’,1,’1990-02-10’,’计算机’,50,NULL)数据操作修改数据UPDATE<表名>SET<列名1>=<新值1>[,<列名2>=<新值2>[…n]] [WHERE<条件>]实例:UPDATEXSB SETBZ=‘三好生’ WHEREXH=‘081101’UPDATEXSBSET总学分=总学分+10数据操作删除数据DELETE[FROM]<表名> [WHERE<条件>]实例:DELETEFROMXSBWHEREZXF>52将xsb表中总学分大于52分的行删除。数据操作查询数据SELECT[ALL|DISTINCT]<列名> [FROM<表名>] [WHERE<条件>]实例:SELECTXM,XH,ZXF FROMXSB WHEREXH=‘081101’SELECT*FROMXSB WHEREZY=‘管理与信息系统’ANDZXF>=422、数据访问技术ASP.NET使用两种方法实现数据的访问一是使用数据源控件和数据绑定控件来访问数据源。二是使用ADO.NET(即system.data命名空间)和System.xml命名空间中的类此外还可使用语言集成查询LINQ,利用LinqDataSource和ListView控件。2.1数据源控件数据源控件能向页面上的数据绑定控件提供来自不同数据源的数据,并提供排序、分页、缓存、更新、插入和删除数据等功能。数据源控件都派生于DataSourceControl类,具有统一的基本编程模型和API,共享一组基本的核心功能。只用来表示特定的后端数据存储,没外在表现形式,运行时不可见,需要与数据绑定控件配合使用。若数据存储在SQLServer、SQLServerExpress、ODBC数据源、OLEDB数据源、Oracle数据库中时,使用SqlDataSource控件。参见ASP.NET包含的数据源控件.txt常用的数据源控件SqlDataSource可以连接到ADO.NET支持的任何SQL数据库AccessDataSource连接到使用MicrosoftOffice创建的Access数据库ObjectDataSource连接到应用程序的Bin或
App_Code
目录中的中间层业务对象或数据集XmlDataSource连接到XML文件SitemapDataSource连接到此应用程序的站点导航树(要求应用程序根目录处有一个有效的站点地图文件,默认的文件名为“Web.sitemap”),站点地图文件其实也是一个XML文件LINQDataSource.NET3.0新增,可以访问各种类型的数据,包括数据库和XML文件。与C#/VB.NET等.NET语言直接集成17SqlDataSource控件将SqlDataSource控件与数据绑定控件集成,为SqlDataSource控件设置数据库连接字符串、SQL语句或者存储过程名。当应用程序运行时,SqlDataSource控件会根据设置的参数自动连接数据源,并且执行SQL语句或者存储过程,然后返回结果记录集,最后关闭数据库。这些过程不需编码,只要设置控件属性即可。一个实例<asp:SqlDataSourceID="SqlDataSource1"runat="server"ConnectionString="<%$ConnectionStrings:NORTHWINDConnectionString%>"SelectCommand="SELECT[RegionID],[RegionDescription]FROM[Region]"OnSelected="SqlDataSource1_Selected"></asp:SqlDataSource>与之共同使用的数据绑定控件示例:<asp:RadioButtonListID="RadioButtonList1"runat="server"DataSourceID="SqlDataSource1"DataTextField="RegionDescription"DataValueField="RegionID"RepeatDirection="Horizontal"BorderWidth="2px"BorderColor="Gray"></asp:RadioButtonList></div>Web.config文件中的创建<connectionStrings><addname="NORTHWINDConnectionString1" connectionString="DataSource=.\SQLEXPRESS; AttachDbFilename=|DataDirectory|\NORTHWIND.MDF; IntegratedSecurity=True;ConnectTimeout=30;UserInstance=True"providerName="System.Data.SqlClient"/></connectionStrings>使用参数的一个实例<asp:SqlDataSourceID="SqlDataSource1"runat="server"
ConnectionString="<%$ConnectionStrings:NORTHWINDConnectionString%>"
SelectCommand=“SELECT*FROM[Customers]WHERE([CustomersID]=@CustomersID
)"<SelectParameters>
<asp:QueryStringParameterName=“CustomerID”
QueryStringField=“ID”Type=“String”></asp:QueryStringParameter></SelectParameters></asp:SqlDataSource>SqlDataSource控件属性、方法和事件属性很多,重要的有DataSourceMode、SelectParameters和ConflictDetection方法可在程序中调用,完成标准数据操作,如在按钮单击事件处理程序中执行Delete方法,实现删除记录的操作。IntDelete()、IntInsert()、IntUpdate()、IntIenumerableSelect()SqlDataSource控件属性、方法和事件主要事件有8个,在执行Select、Insert、Update和Delete命令的前后触发,使用这些事件可以改变控件发送给数据源的SQL命令。也可在执行SQL命令时,取消操作或确定是否发生了错误。Selected和SelectingInserted和InsertingUpdated和UpdatingDeleted和Deleting典型应用(参见实例)使用SqlDataSource控件连接数据库利用带参数的Select语句直接查询并筛选数据在数据源的查询结果中过滤数据参见8.1、8.2、8.3实例使用SqlDataSource控件连接数据库利用带参数的Select语句直接查询并筛选数据本例涉及的Employees表的部分记录如下:利用带参数的Select语句直接查询并筛选数据代码中实现数据筛选的核心来自于带参数的SQL语句,筛选是通过数据源来完成的。当选择不同的身份时,自动筛选出相应的雇员名。在数据源的查询结果中过滤数据本例的过滤是通过数据源控件来完成的,不是由数据源本身实现。当选择不同的身份时,将自动筛选出相应的雇员名。2.2数据绑定控件主要用来在页面显示数据。可以用表格、报表、单选项、多选项和树形方式显示。常用的有:GridView、ListView、DetailsView、FormView等。以GridView为例,在不编写代码情况下,实现对数据的排序、分页和编辑操作。数据绑定的层次结构31数据库ADO.NET数据绑定控件数据源控件提供显示和编辑数据的可视化界面IDataSourceDataSourceView提供对数据的访问接口:增、删、改、查与数据库交互,完成信息的增、删、改、查工作。信息的存放地调用存取常用的数据绑定控件控件名称说明GridView以表格的方式显示和编辑数据DetailsView一次显示、编辑、插入或删除一条记录。默认情况下,DetailsView
控件将记录的每个字段显示在它自己的一行内FormViewFormView控件与DetailsView控件相似,一次也只能显示或编辑一条记录。FormView需要给其设定一个模板DataList控件可以用某种用户指定的格式来显示数据(比如分列显示),这种格式由模板和样式进行定义RepeaterRepeater控件没有包含内置的布局或样式,需要由Web开发者指定所有的用于显示数据的内部控件和显示样式ListViewASP.NET3.5新增,以嵌套容器模板和占位符的方式提供灵活的数据显示模式32GridView控件是以表格的形式显示数据,通过对其属性进行设置,可以实现数据的分页、排序和编辑功能。建立一个网页,放入一个SqlDataSource控件和一个GridView控件。为数据源控件配置数据表。将绑定控件与数据源控件绑定。参见实例8-93、ADO.NET数据访问编程模型ADO.NET是.NETFramework的核心构件,为上层的各种应用程序提供数据存储服务。ADO.NET是在微软的.net中创建分布式和数据共享应用程序的应用程序开发接口(API)ADO.NET是一组数据处理的类。通过数据提供程序和数据集这两个核心组件,提供一个统一的数据访问模型,提供了各种对数据库数据的存取功能。支持在线和离线的数据访问。微软数据存取技术的历史发展ODBC:访问关系型数据库DAO与RDO:主要为VB早期版本设计的,可以方便地访问Access和SQLServerADO与OLEDBObjectLinkingandEmbedding,Database,:随着VisualStudio6一同发布,是Win32时代用得最广泛的数据存取引擎。ADO.NET:.NET时代主流数据存取引擎LINQ:.NET3.0后引入,将数据存取访问功能集成到编程语言中36ADO.net对象模型务必记住以下对象模型与数据库构成元素的对应关系。不同的数据访问方式区别数据访问应用程序可以在连接环境或非连接环境下进行。连接环境是指应用程序始终与数据源保持连接,直到程序结束。这种方式实时性好,但伸缩性差;离线环境是指应用程序不是始终与数据源保持连接,中央数据存储的一部分可以被独立地复制与更改,在需要时可以与数据源中的数据合并,这种方式不独占连接,可伸缩性好,但实时性差。离线环境中使用ADO.NET声明连接对象Connection声明数据适配器DataAdapter对象声明DataSet对象打开连接,连接到数据源调用DataAdapter对象的Fill方法填充DataSet对象关闭连接对象Connection,断开与数据源的连接处理离线数据DataSetADO.NET应用程序DataSetDataAdapterConnectionDB连接环境中使用ADO.NET声明连接对象Connection声明查询数据库的Command对象,用来执行SQL查询;声明DataReader对象打开连接,连接到数据源调用Command对象的ExecuteReader方法,将结果返回给DataReader对象处理DataReader获得的在线数据。关闭DataReader对象关闭连接对象Connection,断开与数据源的连接。ADO.NET应用程序DataReaderCommandConnectionDB数据提供程序数据提供程序是.netFramework内置的,一系列API的集合,主要有四个,(1)Connection,建立与数据源的连接。(2)Command,是对数据源操作命令的封装。(3)DataReader,用来实现对特定数据源中的数据进行高速、只读、只向前的数据访问。(4)DataAdapter,用来将从数据源中检索出的数据送往数据集DataSet。数据提供程序的核心对象(1)Connection,建立与数据源的连接。SqlConnectionconn=newSqlConnection();Conn.ConnectionString=“DataSource=MySqlServer;Userid=sa;password=123456;InitialCatalog=Northwind;IntegratedSecurity=False”;常用的方法:Open();Close();ChangeDatabase();CreateCommand();Dispose()数据提供程序的核心对象(2)Command,是对数据源操作命令的封装。Stringsql=“SELECT*FROMXSB”;SqlCommandcommand1=NewSqlCommand(sql,sqlConnection)针对不同数据源,有不同的对象:OleDbCommand、SqlCommand、OdbcCommand、OracleCommand数据提供程序的核心对象(3)DataReader,用来实现对特定数据源中的数据进行高速、只读、只向前的数据访问。必须在持续连接状态下工作。必须在创建Command对象的实例后,通过调用其ExecuteReader方法创建DataReader。DataReader
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年度文化旅游融合项目投资借款协议
- 买卖合同第三方保证担保合同(2024版)
- 二零二五年度旅行社旅游培训合作合同4篇
- 2025年度女方婚内出轨离婚财产分割及赡养费协议
- 2025年度个人商铺租赁合同能源消耗监测与管理合同4篇
- 2025年度个人与企业间特殊用途车辆租赁合同3篇
- 二零二五年度农民工劳动保护补贴发放合同标准
- 2024苗木运输合同范本全面规范运输过程中的风险防控3篇
- 二零二五年度加油站LED广告屏安装装修合同3篇
- 二零二五年度农业科技园区运营管理服务合同-@-1
- 2024年全国体育专业单独招生考试数学试卷试题真题(含答案)
- 北师大版小学三年级上册数学第五单元《周长》测试卷(含答案)
- DB45T 1950-2019 对叶百部生产技术规程
- 2025届河北省衡水市衡水中学高考仿真模拟英语试卷含解析
- 新修订《保密法》知识考试题及答案
- 电工基础知识培训课程
- 住宅楼安全性检测鉴定方案
- 广东省潮州市潮安区2023-2024学年五年级上学期期末考试数学试题
- 市政道路及设施零星养护服务技术方案(技术标)
- 选择性必修一 期末综合测试(二)(解析版)2021-2022学年人教版(2019)高二数学选修一
- 《论语》学而篇-第一课件
评论
0/150
提交评论