using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

using System.Data;

using System.Data.SqlClient;

 

namespace DataSet应用

{

    class Program

    {

        static void Main(string[] args)

        {

            //1.创建一个临时数据库

            DataSet ds = new DataSet();

            //2.创建一个临时表

            DataTable dt = new DataTable();

            //DataTable被new出来时,是没有行也没有列的,所以要先给它添加列,与行

 

            //2.1为dt添加列,先添加一个自增的主键

            DataColumn dcId = new DataColumn("id");

            dcId.AutoIncrement = true;//设置成自增字段

            dcId.AutoIncrementSeed = 1;//种子

            dcId.AutoIncrementStep = 1;//步长

            dt.Columns.Add(dcId);//把new出来的这一列,添加到datatable中

 

            //再添加一列,名字

            DataColumn dcName = new DataColumn("name", typeof(string));

            dcName.Unique=true;

            dt.Columns.Add(dcName);

 

            //再添加一列,密码

            dt.Columns.Add("password", typeof(string));

 

            //2.2添加一行数据

            // DataRow row = new DataRow();

            //DataRow的构造函数是ptotected的,所以不允许在外部new DataRow的对象

            DataRow row = dt.NewRow();

            row["name"] = "安飞";

            row["password"] = "123";

            //把这一行填充到dataTable中去

            dt.Rows.Add(row);

 

            //2.3添加多行数据

            for (int i = 0; i < 10; i++)

            {

                DataRow dr = dt.NewRow();

                dr["name"] = "zs" + i.ToString();

                dr["password"] = "123" + i.ToString();

                dt.Rows.Add(dr);

            }

            //3.baDataTable添加到DataSet中

            ds.Tables.Add(dt);

 

            //遍历ds里的所有dataTable

            foreach (DataTable table in ds.Tables)

            {

                Console.WriteLine("--------------------{0}-------------",table.TableName);

                //遍历dt里的每一行

                foreach (DataRow dr in table.Rows)

                {

                    //遍历每一列

                    for (int i = 0; i < table.Columns.Count; i++)

                    {

                        Console.Write(dr[i].ToString() + "\t");

                    }

                    Console.WriteLine();

                }

            }

        }

    }

}