2013年9月11日 星期三

C# DataTable 使用方式

    public class takefile
    {
        SqlConnection conn = new SqlConnection("server = 127.0.0.1 ; database = LWS; uid = sa ; pwd = sa");
        SqlCommand cmd = new SqlCommand();

        public string[] takefilename(string filename)
        {
            //takefileBean takefilebean = new takefileBean();
            conn.Open();
            cmd.Connection = conn;
            cmd.CommandText = "SELECT _id, APP FROM " + filename ;

            //cmd.Parameters.Clear();
            //cmd.Parameters.AddWithValue("@filename", filename);
            SqlDataAdapter sd = new SqlDataAdapter(cmd.CommandText, conn);
            DataTable dt = new DataTable();
            sd.Fill(dt);

            string[] takefilename = new string[dt.Rows.Count];

            for (int i = 0; i < dt.Rows.Count; i++)
            {
                takefilename[i] = dt.Rows[i][0].ToString() + "|" + dt.Rows[i][1].ToString();
            }

            conn.Close();
            return takefilename;
        }

       可以看到SqlDataAdapter會將讀到的資料全部放在DataTable中

       之後的dt.Rows[i][0].ToString()第一個[]代表Row為資料的筆數

       第二個[]代表Column為資料的欄位

       簡單來說今天我們只從資料庫領取ID這個欄位

       所以Column的欄位數只有1  所以在這裡永遠為0

       如果今天我們從資料庫再多領取Datetime不同的資料

       欄位數請自己往上計算    先領取的會再比較前面的欄位

       Row的欄位數則是看你的資料庫存有幾筆資料而定

       最後回傳一個二維的陣列出來

沒有留言:

張貼留言