using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Text;

namespace ryCommon
{
    /// <summary>
    /// 数据库操作扩展
    /// </summary>
    public static class DbExtension
    {
        /// <summary>
        /// 判断DataSet是否包含数据
        /// </summary>
        /// <param name="ds"></param>
        /// <returns></returns>
        static public bool HaveData(this DataSet ds)
        {
            if (ds != null && ds.Tables.Count > 0 && ds.Tables[0].Rows.Count > 0)
            {
                return true;
            }
            return false;
        }
        /// <summary>
        /// 获取首行数据,如果没有数据,则返回null
        /// </summary>
        /// <param name="ds"></param>
        /// <returns></returns>
        static public DataRow GetFirstRowData(this DataSet ds)
        {
            if (ds != null && ds.Tables.Count > 0 && ds.Tables[0].Rows.Count > 0)
            {
                return ds.Tables[0].Rows[0];
            }
            return null;
        }
        /// <summary>
        /// 获取第一行第一列的值
        /// </summary>
        /// <param name="ds"></param>
        /// <returns></returns>
        static public int GetFirstRowCellValue(this DataSet ds)
        {
            if (ds != null && ds.Tables.Count > 0 && ds.Tables[0].Rows.Count > 0)
            {
                return ds.Tables[0].Rows[0][0].ToInt(0);
            }
            return 0;
        }
        /// <summary>
        /// 获取第一张表的指定行数据
        /// </summary>
        /// <param name="ds"></param>
        ///  <param name="i">指定第几行</param>
        /// <returns></returns>
        static public DataRow GetRow(this DataSet ds,int i)
        {
            return ds.Tables[0].Rows[i];
        }
    }
}
