zoukankan      html  css  js  c++  java
  • ExecuteNonQuery及对比

      ExecuteNonQuery()方法主要用户更新数据,通常它使用Update,Insert,Delete语句来操作数据库.因为名中有“Non Query”,就是执行非查询类的语句,比如update、delete、insert等数据更新操作。

    【返回值】

      对于 Update,Insert,Delete  语句 执行成功是返回值为该命令所影响的行数,如果影响的行数为0时返回的值为0。

    【区别1】executereader()

      本函数执行查询操作,返回DataReader对象。

    【区别2】ExecuteScalar()  

    ExecuteScalar() 这个方法不接受任何参数,仅仅返回查询结果集中的第一行第一列,而忽略了其它的行和列,而且返回的是一个object类型,在使用之前必须先将它强制转换为所需类型。如果返回的仅仅是一个单独的数据元,则可以使用此方法来提高代码的性能。例:

     

       string strCon="server=localhost;database=Northwind;Trusted_Connection=Yes;";
       string strqry="select count(*) from Categories";
       SqlConnection con=new SqlConnection(strCon);
       con.Open();
       SqlCommand cmd=con.CreateCommand();
       int i=Convert.ToInt32(cmd.ExecuteScalar());
     //必须强制转换

    【区别3】ExecuteXmlReader() 

     ExecuteXmlReader() 此方法用于XML操作,返回一个XmlReader对象,由于系统默认没有引用System.Xml名空间,因此在使用前必须前引入。例:

     

       string strCon="server=localhost;database=Northwind;Trusted_Connection=Yes;";
       SqlConnection con=new SqlConnection(strCon);
       con.Open();
       SqlCommand cmd = new SqlCommand("select * from Categories FOR XML AUTO, XMLDATA", con);
       XmlReader xr=cmd.ExecuteXmlReader();
       Response.Write(xr.AttributeCount);
      //这里获取当前节点上的属性个数
     
       xr.Close();

     

     执行完毕之后,照样要显式地调用Close()方法,否则会抛出异常。

     

  • 相关阅读:
    【HDU
    写个shell脚本依次运行每个程序半小时
    Windows10 + Visual Studio 2017环境为C++工程安装使用ZMQ
    【UVALive
    【Gym
    【最短路算法】Dijkstra+heap和SPFA的区别
    【Gym 100812C】Story of Princess (走完图所有边)
    【C++】VS2015/VS2017连接Mysql数据库教程
    博客园设置Google-code-prettify渲染代码高亮
    【QML与C++混合编程】用QVariantList传递数组类型成员
  • 原文地址:https://www.cnblogs.com/suifing/p/2960517.html
Copyright © 2011-2022 走看看