欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    c#基础教程之cha.ppt

    • 资源ID:6502343       资源大小:1.24MB        全文页数:45页
    • 资源格式: PPT        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    c#基础教程之cha.ppt

    数据库编程-连接数据库,第六章,2,本章目标,了解ADO.NET 结构了解ADO.NET 的组件使用Command 对象和 Connection 对象使用ADO.NET 进行事务处理,3,ADO.NET 简介 2-1,中央数据库,用户需要时,可以随时访问数据,用户计算机向数据库服务器发送请求,客户端,不同的访问方法和技术,ADO.NET,4,ADO.NET 简介 2-2,.NET Framework,ADO.NET,System.Data 命名空间,以 ActiveX 数据对象(ADO)为基础以 XML(扩展标记语言)为格式传送和接收数据,5,ADO.NET 的优点,互操作性性能可伸缩性标准化可编程能力,6,ADO.NET 对数据库的访问(3-1),将数据传递到用户界面时,ADO.NET 采用 XML 格式,数据已缓存,断开式数据结构,7,ADO.NET 对数据库的访问(3-2),对于Insert,Update,Delete 等单向操作,应用程序,数据库,1、用Connection.Open打开数据库,2、用DataAdaptor.Command或者 Command.Execute 执行命令,3、关闭数据库,Insert用InsertCommandDelete 用DeleteCommandUpdate用UpdateCommand,8,ADO.NET 对数据库的访问(3-3),应用程序,数据库,关闭数据库,1、用Connection.Open建立连接,2、用DataAdaptor.SelectCommand 执行命令,DataAdaptor.Fill,对于Select的双向操作,DataSet,9,.NET 数据提供程序 5-1,ADO.NET,DataSet,.NET Framework 数据提供程序,1、SQLClient2、OLEDB3、Oracle4、ODBC,由以下各项组成的集合:,10,.NET 数据提供程序 5-2,客户端,服务器,数据集,2、将数据发送到数据集,A、客户端修改数据集,3、数据集传递给客户端,B、将修改后的数据集传递给服务器,1、客户端从服务器请求数据,1,2,3是从服务器检索数据的过程A、B是对数据库修改的过程,11,.NET 数据提供程序 5-3,用于 SQL Server 的.NET Framework 数据提供程序,命名空间,仅限于连接 SQL Server 数据库 7.0 或更高版本,12,.NET 数据提供程序 5-4,用于 OLEDB 的.NET Framework 数据提供程序,13,.NET 数据提供程序 5-5,用于 ODBC 的.NET Framework 数据提供程序的命名空间用于 Oracle 的.NET Framework 数据提供程序的命名空间,命名空间,命名空间,14,知识点小结,使用的名称空间SQL Serverusing OLE DB using Oracleusing ODBCusing,15,为什么使用 Connection,应用程序,数据源,请求数据,Connection,16,示例1 代码分析,关键代码回顾,/数据库连接字符串string connString=Data Source=.;Initial Catalog=MySchool;User ID=sa;/创建 Connection 对象SqlConnection connection=new SqlConnection(connString);/打开数据库连接connection.Open();MessageBox.Show(打开数据库连接成功);/关闭数据库连接connection.Close();MessageBox.Show(关闭数据库连接成功);,表示本机,17,Connection 主要成员,必须显式关闭连接,18,连接数据库步骤,连接数据库的步骤:1、定义连接字符串,2、创建 Connection 对象,3、打开与数据库的连接,Data Source=服务器名;Initial Catalog=数据库名;User ID=用户名;Pwd=密码,SqlConnection connection=new SqlConnection(connString);,连接字符串,connection.Open();,没有密码,可省略,19,Connection 对象,不同命名空间的 Connection 对象,20,小结,连接到本机的 pubs 数据库,/连接字符串string connString=Data Source=.;Initial Catalog=pubs;User ID=sa;/创建Connection 对象 SqlConnection connection=new SqlConnection(connString);connection.Open();/打开数据库连接connection.Close();/关闭数据库连接,关键代码,21,为什么使用 Command,应用程序打开数据库处理数据,数据源,Connection,Command,执行命令并从数据源中返回结果,22,Command 的主要成员,23,使用 Command 步骤,使用Command步骤:1、创建数据库连接2、定义 SQL 语句3、创建 Command 对象4、执行命令,SqlConnection connection=new SqlConnection(connString);string sql=SELECT COUNT(*)FROM Student;connection.Open();/打开数据库连接SqlCommand command=new SqlCommand(sql,connection);int num=(int)command.ExecuteScalar();,执行命令前,必须打开数据库连接!,要进行类型转换!,24,Command 对象,用SQL 语句的Command设置SqlCommand Comm=new SqlCommand();Comm.CommandText=SQL 语句;Comm.CommandType=CommandType.Text;Comm.Connection=sqlConn;用存储过程的Command设置SqlCommand Comm=new SqlCommand();Comm.CommandText=sp_UpdateName;Comm.CommandType=CommandType.StoredProcedure;Comm.Connection=sqlConn;其中,Sp_UpdateName是在SQL Server服务器上创建的存储过程,25,综合示例,完成系统登录功能1、验证管理员的用户名和密码是否存在2、验证通过,显示管理员主窗体,处理登录按钮的 Click 事件定义一个 ValidateUser()方法需要 Connection 和 Command 对象分两步实现验证:1、建立数据库连接2、验证用户是否存在,26,用户验证方法框架,ValidateUser()方法框架,1、验证的结果:通过,不通过,返回值为 bool 型,2、方法需要:用户名,密码,登录类型,值方式传参,3、不通过的原因:用户名或密码不存在、其他原因,引用方式传参,public bool ValidateUser(string loginType,string loginId,string loginPwd,ref string message),27,用户验证方法具体实现,第一步:建立数据库连接增加 DBHelper 类,第二步:查询用户是否存在SELECT COUNT(*)ExecuteScalar()方法查询,ValidateUser()方法具体实现,28,小结,/查询 Student 表使用的 SQL 语句string sql=string.Format(SELECT COUNT(*)FROM Student WHERE LogInId=0 AND LogInPwd=1,txtLogInId,txtLogInPwd);/使用的 Command 对象SqlCommand command=new SqlCommand(sql,DBHelper.connection);();/执行查询,返回找到的个数count=(int)command.ExecuteScalar();,增加验证用户的代码,29,总结,Connection 对象的什么方法用来打开和关闭数据库连接?ExecuteScalar()方法返回什么?,30,知识点小结,Connection对象的作用Connection对象的两种使用方法拖拉控件写代码四种典型的连接方式的应用名称空间和连接字符串的写法SqlConnectionOleDbConnectionOracleConnectionOdbcConnection,31,.NET 中的事务处理 3-1,肥皂,关系表,数据库,5,12439,12439,2004 年 10 月 30 日,已成功地完成对一个表的操作,但是关系表尚未更新,因此,数据会出现不一致的现象,不完整的,事务处理!,成功地进行整个操作或者取消整个操作,确保,事务处理是一组数据操作,这些操作要么必须全部成功,要么必须全部失败,以保证数据的一致性和完整性,32,.NET 中的事务处理 3-2,Begin:在执行事务处理中的任何操作之前,必须使用 Begin 命令来开始事务处理Commit:在成功将所有修改都存储于数据库时,才算是提交了事务处理Rollback:由于在事务处理期间某个操作失败,而取消事务处理已做的所有修改,这时将发生回滚,事务处理命令,33,.NET 中的事务处理 3-3,34,SqlTransaction 类 3-1,方法,属性,Save(),Rollback(),Commit(),Connection,SqlTransaction 类表示要对数据源进行的事务处理,35,SqlTransaction 类 3-2,在 ADO.NET 中实现事务处理时执行的步骤顺序,SqlConnection sqlConn=new SqlConnection(server=SQLDB;uid=sa;pwd=sa;database=pubs);sqlConn.Open();,创建数据库连接并打开该连接,SqlTransaction sqlTrans=sqlConn.BeginTransaction();,使用 BeginTransaction()方法开始事务处理,36,SqlTransaction 类 3-3,Comm.Transaction=sqlTrans;,将 Command 对象的 Transaction 属性设置为事务处理对象,insertCommand=Insert into Student(Id,Name)values(200494012,“WangLi);Comm.CommandText=insertCommand;Comm.ExecuteNonQuery();,执行 SQL 命令,sqlTrans.Commit();,如果操作过程中没有错误,则提交事务处理。如果操作过程中发生错误,则回滚已完成的所有修改,sqlConn.Close();,关闭连接,37,应用程序示例 7-1,在 VS.NET 2005 中新建一个名为Example1 的基于 Windows 的项目。将默认窗体命名为 frmFlight.cs,用户界面,38,应用程序示例 7-2,39,应用程序示例 7-3,/Connection 对象和 Command 对象private SqlConnection sqlConn;private SqlCommand sqlComm;/类变量private string instrCmd;private string modCmd;private string delCmd;,private void frmFlight_Load(object sender,System.EventArgs e)/初始化 connection 对象 sqlConn=new SqlConnection(server=jeny;database=Flights;uid=sa;pwd=sa);/将座位数量添加到组合框中();this.cboSeats.Items.Add(“200);this.cboSeats.Items.Add(“250);this.cboSeats.Items.Add(“300);=false;=false;,给组合框添加项并禁用按钮,初始化 connection 对象,40,应用程序示例 7-4,private void btnAdd_Click(object sender,System.EventArgs e)/插入命令 instrCmd=insert into FlightDetails values(+,+,“+,“+,“+,+,“+()+);/初始化 command 对象 sqlComm=new SqlCommand(instrCmd,sqlConn);,将插入命令和 connection 对象传递给 command 对象,btnAdd Click 事件处理程序,41,应用程序示例 7-5,try/打开连接 sqlConn.Open();/执行插入语句 sqlComm.ExecuteNonQuery();MessageBox.Show(“已成功添加记录);/启用和禁用按钮=true;=true;=false;=false;catch(SqlException ex)MessageBox.Show(ex.Message);finally/关闭连接sqlConn.Close();,打开连接并执行 sqlComm 中的命令,btnAdd Click 事件处理程序,42,应用程序示例 7-6,private void btnModify_Click(object sender,System.EventArgs e)modCmd=update FlightDetails set Airline=“+,Destination=“+,Source=+,Arrival=+,Departure=+,TotalSeats=+()+where FlightCode like+;sqlComm=new SqlCommand(modCmd,sqlConn);trysqlConn.Open();sqlComm.ExecuteNonQuery();MessageBox.Show(“已成功更新记录);catch(SqlException ex)MessageBox.Show(ex.Message);finally sqlConn.Close();,设置更新命令,btnModify Click 事件处理程序,43,Sample Application 7-7,private void btnDelete_Click(object sender,System.EventArgs e)delCmd=delete from FlightDetails where FlightCode like“+;MessageBox.Show(delCmd);/初始化 command 对象sqlComm=new SqlCommand(delCmd,sqlConn);try/初始化 DialogResult DialogResult objDialogResult=MessageBox.Show(“您确定要删除当前记录吗?,“确认,MessageBoxButtons.YesNo);/确定用户的响应 if(objDialogResult.Equals(DialogResult.Yes)sqlConn.Open();sqlComm.ExecuteNonQuery();MessageBox.Show(“已删除记录);btnModify.Enabled=false;,btnDelete Click 事件处理程序,44,总结 2-1,.NET framework 中的 ADO.NET 是一组类,允许应用程序与数据库交互,以便检索和更新信息DataSet 和.NET 数据提供程序是 ADO.NET 的两个主要组件每种.NET 数据提供程序都是由以下四个对象组成:ConnectionCommandDataAdapterDataReader,45,总结 2-2,Connection 对象用于在应用程序和数据库之间建立连接Command 对象允许向数据库传递请求、检索和操纵数据库中的数据事务处理是一组数据操作,这些操作要么必须全部成功,要么必须全部失败,以保证数据的一致性和完整性,

    注意事项

    本文(c#基础教程之cha.ppt)为本站会员(牧羊曲112)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开