zoukankan      html  css  js  c++  java
  • 简单认识DataSet与DataTable

    DataSet 是放在内存中的,对DataSet中数据的修改并不直接反应到数据库,要通过 DataAdapter 的 Update 方法更新回数据库;

    DataSet相当你用的数据库; DataTable相当于你的表。一个 DataSet 可以包含多个 DataTable;

    DataSet 由表、关系和约束的集合组成。在 ADO.NET 中,DataTable对象用于表示 DataSet 中的表。DataTable 表示一个内存内关系数据的表;

    例如:

    SqlDataAdapter   da=new   SqlDataAdapter(cmd);   
      DataTable   dt=new   DataTable();   
      da.Fill(dt);   

    例如:

    连接数据库时

            public static DataSet Query(string SQLString)
            {
                using (SqlConnection connection = new SqlConnection(connectionString))
                {
                    DataSet ds = new DataSet();
                    try
                    {
                        connection.Open();
                        SqlDataAdapter command = new SqlDataAdapter(SQLString, connection);
                        command.Fill(ds, "ds");
                    }
                    catch (System.Data.SqlClient.SqlException ex)
                    {
                        throw new Exception(ex.Message);
                    }
                    return ds;
                }
            }

    操作数据时

            protected void Page_Load(object sender, EventArgs e)
            { 
                if (!IsPostBack)
                {
                    GetTopNews();
                }
            }
    
            protected string GetTopNews()
            {
                StringBuilder sb=new StringBuilder();
                string sql = "SELECT TOP 50 * from tb_content WHERE classid='90'";
                DataTable dt = Helper.HelperExecuteSql.Query(sql).Tables[0];
                if (dt.Rows.Count > 0)
                {
                    for (int i = 0; i < dt.Rows.Count; i++)
                    {
                        sb.Append("<li>" + dt.Rows[i]["Title"] + "</li>");
                    } 
                }
                return sb.ToString();
            }  

    http://www.lmwlove.com/ac/ID535 如何获得DataRow在DataTable中的行号

    方法一
    private int FindRowIndex(DataRow dr) 
    { 
        return dr.Table.Rows.IndexOf(dr); 
    }
    方法二:
    private int FindRowIndex(DataRow dr) 
    {
        for(int i=0;i<DataTable.Rows.Count;i++)
        {
            if(DataTable.Rows[i]["主键列"].ToString()=="我们要查找的值")
            {
               return i;
            }
        }
        return 0;
    }                    
  • 相关阅读:
    PHPCMS 商品浏览记录及其遇到的问题
    9月10日
    phpcms v9 数据库操作函数
    html Meta (整合)
    不同内核浏览器的差异以及浏览器渲染(转)
    position属性absolute与relative(转载)
    html规范,某人总结
    切图神器Assistor PS(PS外挂神器,亲证免费可用,下面是转载的使用方法)
    Android开发学习笔记:圆角的Button
    sublime text 2 技巧
  • 原文地址:https://www.cnblogs.com/shy1766IT/p/5012809.html
Copyright © 2011-2022 走看看