zoukankan      html  css  js  c++  java
  • ADO.NET学习小结【1】正在更新...

    小弟正在学习ADO.net有误的地方还请大大们批评指出,小弟在此谢过了

    一、ADO.net简述:

           以前我们写程序尤其是写和数据库有关的应用程序时,你我都得要了解Microsoft ADO COM对象才能和相关的数据库进行交互。而Microsoft  随着.Net Framework的发行,并推出了新的数据库访问技术ADO.NET,这使程序员对数据库访问更加的便捷,快速。知道Delphi的人可能知道Delphi的编程语言使用的语言是Pascal语言,而Delphi的编译器又称为世界上最快的编译器,而我自己对Microsoft ADO.NET的感觉是,在写数据库方面的程序时有种在全用Delphi的感受!

           ADO.NET和ADO的区别,首先这是两种截然不同的技术,前者是基于.NET Framework平台的数据库访问技术,后者是使用OLE DB接口并基于微软的COM技术来实现数据库的交互的;既然他们是两种截然不同的技术,但是.NET程序员也是可能通过.NET的COM互操作性服务来使用ADO;

    二、ADO.NET主要的组成:

          

           从上图中可以看到ADO.NET主要的组件:

    1.        Command Object
    2.        DataReader Object
    3.        Connection Object
    4.        DataAdapter Object
    5.        DataSet Object

           ADO.NET的主要分为两种访问数据库的方式:

           1.连接式的,也就是通过Connection构造一个连接对象,通过Command对象DataReader对象连接着数据库,并实时的操作数据库:

                         例子:

           .....

    ..............

                        

    String conStr =@"Server=myServerAddress;Database=myDataBase;User Id=myUsername;
    Password=myPassword;";
    
    using(SqlConnection conn = new SqlConnection(conStr)){
    
           conn.open();
    
           string sqlAllCustomers = @"select * from Customers";
    
           SqlCommand cmd = new SqlCommand(sqlAllCustomers,conn);
    
           using(SqlDataReader reader = cmd.ExecuteReader()){
    
                         while(reader.Read()){
    
                                for(int i = 0; i<reader.FieldCount; i++){
    
                                       Console.WriteLine(reader[i].ToString());
    
                                }
    
                         }
    
           }
    
    }

    上面的例子是通过SqlConnection对象连接到SQL SERVER数据库当中,并全用SqlCommand对象来进行SQL语句进行操作数据库,完了以扣再全用数据读取器来将数据遍历出来;

           2.断开式的数据访问方式,这种方式,就是通过SqlDataAdapter对象将数据填充到DataSet当中,然后SqlDataAdapter会断开数据连接,这时数据会在内存或是以XML形式在本地存储;当对本地数据DataSet操作完毕,直接调用SqlDataAdapter对象的Update方法即可将数据向DBMS提交过去,并由DBMS来处理数据的DML,DDL,DCL;

           例子:

          

    String conStr =@"Server=myServerAddress;Database=myDataBase;User Id=myUsername;
    Password=myPassword;";
    
    using(SqlConnection conn = new SqlConnection(conStr)){
    
           conn.open();
    
           string sqlAllCustomers = @"select * from Customers";
    
           SqlCommand cmd = new SqlCommand(sqlAllCustomers,conn);
    
           DbDataAdapter dbAdpter = new DbDataAdapter(cmd);
    
           DataSet ds = new DataSet("Customers");
    
           dbAdpter.Fill(ds,"Customers");
    
           DataGridView.DataSrusour =ds.Tables[0];
    }
  • 相关阅读:
    让你忘记 Flash 的15款精彩 HTML5 游戏
    经典网页设计:10个响应式设计的国外购物网站
    个人网站设计:25个国外优秀案例带给你灵感
    震撼!20幅令人难以置信的摄影图片欣赏
    Vex – 超轻量!可以轻松自定义的现代风格弹窗插件
    高端大气上档次!10个精美的国外HTML5网站欣赏
    桂系军阀老大为何不是打仗独步天下的白崇禧?三个方面不如李宗仁(气量,人缘,大局观)
    LEO原创-FMX之你不知道的ARC
    ubuntu64位系统编译时头文件找不到的问题(可以查看g++ -v路径,设置export C_INCLUDE_PATH,CPLUS_INCLUDE_PATH)
    qt设计器中使用自定义控件
  • 原文地址:https://www.cnblogs.com/flay/p/4763435.html
Copyright © 2011-2022 走看看