zoukankan      html  css  js  c++  java
  • DataTable使用时的小问题

     1.在使用DataTable.Select()方法时,对其中的条件使用,我一直都没用到以时间为条件的.昨天,我要判断在select方法中判断日期是否相等,开始我是这样写的:DataTable.Select(" BeginDate="+Convert.DateTime(dt1.Rows[0]["StartDate"]+"");字段BeginDate是日期型,字段StartDate也是日期,应该相等吧.可程序调试到这时,总是出错.后来,在网上搜索了下,原来,使用日期为条件时,要在字段前后分别加上#这个符号.先前的DataTable.Select(" BeginDate="+Convert.DateTime(dt1.Rows[0]["StartDate"]+"");应改为:DataTable.Select("BeginDate="#+Convert.DateTime(dt1.Rows[0]["StartDate"]+"#");
     2.
    在对DataTable新增一行数据时,使用import方法犯的错.以前总觉得DataTable  Rows 集合的 Add 方法 DataTableImportRows方法可以互换,没什么不同的。直到今天,我在使用DataTableNewRow方法时,使用了DataTaleImportRows方法,发现数据没有加进来。于是,我就改用了DataTable.Rows.Add方法,这时,数据加入进来了。于是,我对DataTable.Rows.AddDataTable.ImportRows产生了疑惑。它们有什么不同呢?终于,在MSDN上找到这样一句话:当调用 NewRow 方法时,新创建的行实际上将从 DataTable 分离出来。要附加它,随后必须将它传递到 DataTable  Rows 集合的 Add 方法。所以,当使用NewRow时,只能使用DataTable.Rows.Add方法,不能使用ImportRows方法。数据从 DataTable 导入到另一个 DataTable 中时,且两个DataTable的数据结构相同,则用ImportRows方法好些。
      

    总结:1.使用DataTable的select方法,条件为日期时,要加#.
         2.使用DataTable的NewRow方法后,新加一行数据,只能使用DataTable.Rows.Add方法.

  • 相关阅读:
    python管理包(模块和包的应用)
    简单运行 Jupyter Notebook
    Linux出现“FirewallD is not running”解决办法
    Mindjet MindManager2020切换中文界面的教程
    idea 快捷键汇总
    南怀瑾经典语录
    CentOS 7 安装SonarQube 8.3版本
    Jenkins插件开发完全示例
    Jenkins在Pod中实现Docker in Docker并用kubectl进行部署
    Jenkins的kubernetes-plugin使用方法
  • 原文地址:https://www.cnblogs.com/xx_cs/p/3110888.html
Copyright © 2011-2022 走看看