ASP.NET中 C#访问数据库用三种方式显示数据表

第一种方式:使用DataReader从数据库中每次提取一条数据,用循环遍历表

               下面是我写的一个例子: 

           string linkstr=

@"DataSource=.\SQLEXPRESS;AttachDbFilename=C:\Users\Administrator\Desktop\netSQL\Book Sample.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True";   //连接字符串

            SqlConnection conn = new SqlConnection(linkstr);    //定义连接
            string sql = "select * from students";                         //定义sql语句
            SqlCommand comm = new SqlCommand(sql, conn);//定义并实例化命令
            SqlDataReader reader = comm.ExecuteReader();       //定义DataReader
            Response.Write("<table cellspacing='0'>");
            while (reader.Read())
            {
                Response.Write("<tr>");
                for (int i = 0; i < reader.FieldCount; i++)
                    Response.Write("<td style='border:solid 1px Gray;'>" +
                       reader[i].ToString() + "</td>");
                Response.Write("</tr>");
            }
            Response.Write("</table >");//将DataRead读取的内容用循环一条条写入网页,形成一个数据表

            reader.Close(); conn.Close();//关闭连接,释放资源


第二种方式:使用DataTable从数据库中读取一个数据表,用循环输出这个表

(代码中的数据适配器DataAdapter经常和DataSet配合使用,作为DataSet 和数据源之间的桥接器以便检索和保存数据。而DataSet由一组DataTable对象组成,它具备存储多个数据表以及表间关系的能力。数据表存储在DataTable对象中,表间的关系用DataRelation对象表示。)

  string linkstr =

@"DataSource=.\SQLEXPRESS;AttachDbFilename=C:\Users\Administrator\Desktop\netSQL\BookSample.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True";   //连接字符串

            string sql = "select * from students";                              //定义sql语句
            SqlConnection conn = new SqlConnection(linkstr);    //定义并实例化连接
            SqlCommand comm = new SqlCommand(sql, conn); //定义并实例化命令
            SqlDataAdapter ada = new SqlDataAdapter(comm); //定义数据适配器
            DataTable dt = new DataTable();
            ada.Fill(dt);
            Response.Write("<table cellspacing='0'>");
            for (int i = 0; i < dt.Rows.Count; i++)
            {
                Response.Write("<tr>");
                for (int j = 0; j < dt.Columns.Count; j++)
                    Response.Write("<td style='border:solid 1px Gray;'>" +
                       dt.Rows[i][j].ToString() + "</td>");        
                Response.Write("</tr>");
            }
            Response.Write("</table >");//循环输出DataTable中每一行每一列的内容

            

            conn.Close();


第三种方式:使用代码连接数据库,填充数据表DataTable,再为GridView控件绑定数据源


string linkstr = @"Data Source=.\SQLEXPRESS;AttachDbFilename=C:\Users\Administrator\Desktop\netSQL\BookSample.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True";   //连接字符串

            string sql = "select * from students";
            SqlConnection conn = new SqlConnection(linkstr);
            SqlCommand comm = new SqlCommand(sql, conn);
            SqlDataAdapter ada = new SqlDataAdapter(comm);
            DataTable dt = new DataTable();
            ada.Fill(dt);
            conn.Close();
            GridView1.DataSource = dt;
            GridView1.DataBind();//为GridView绑定数据源(首先得在网页添加一个GridView控件)





猜你喜欢

转载自blog.csdn.net/mini_1251861209/article/details/80676414
今日推荐