大家好!小弟有一事想请教,dataset是一个可以存取数据的容器
那么我可不可以在页面上做两个文本框
textbox1 textbox2
分别将他们填入姓名和学号,然后点击submit按钮,页面就将文本框里的信息存入一个dataset
并将dataset里的信息在datagrid里显示出来循环往复,dataset里的数据越来越多,datagrid显示的数据也就越来越多,这时候我再点击Store按钮,就会将dataset里的信息全部存入数据库中, dataset和datagrid也将数据清零
那么我可不可以在页面上做两个文本框
textbox1 textbox2
分别将他们填入姓名和学号,然后点击submit按钮,页面就将文本框里的信息存入一个dataset
并将dataset里的信息在datagrid里显示出来循环往复,dataset里的数据越来越多,datagrid显示的数据也就越来越多,这时候我再点击Store按钮,就会将dataset里的信息全部存入数据库中, dataset和datagrid也将数据清零
dt.Columns.Add("name");
dt.Columns.Add("psw");
DataRow dr=dt.NewRow();
dr["name"]="name1";
dr["psw"]="psw1";
dt.Rows.Add(dr);
DataGrid1.DataSource=dt;
DataGrid1.DataBind();
System.Data.SqlClient.SqlCommand cm1 = new System.Data.SqlClient.SqlCommand();
cm1.Connection = cnn1;
cm1.CommandText = "select top 10 * from table1";
System.Data.SqlClient.SqlDataAdapter da1 = new System.Data.SqlClient.SqlDataAdapter(cm1); DataTable dt = new DataTable();
da1.Fill(dt);
da1.FillSchema(dt,System.Data.SchemaType.Mapped);//这是必须的,要载入数据表结构
//下面插入多条数据
for(int i=0;i<10;i++)
{
DataRow newRow = dt.NewRow();
newRow[0] = 123;
newRow[1] = "abc";
//....
dt.Rows.Add(newRow);
}
ViewState["myDataTable"] = dt;
//这中间页面可能发生多次回传,多次更改dt的行
//........ DataTable myDT = (DataTable)ViewState["myDataTable"]; //下面重新写回数据库
System.Data.SqlClient.SqlConnection cnn2 = new System.Data.SqlClient.SqlConnection("连接字符串");
System.Data.SqlClient.SqlCommand cm2 = new System.Data.SqlClient.SqlCommand();
cm2.Connection = cnn2;
cm2.CommandText = "select top 10 * from table1";
System.Data.SqlClient.SqlDataAdapter da2 = new System.Data.SqlClient.SqlDataAdapter(cm2);
System.Data.SqlClient.SqlCommandBuilder cb = new System.Data.SqlClient.SqlCommandBuilder(da2);//这句看起来没什么作用,但实际上很关键,如果没有这个就不能用da.Update方法
cnn2.Open();
da2.Update(myDT);
cnn2.Close(); myDT.AcceptChanges();
dt.Columns.Add("name");
dt.Columns.Add("psw");
DataRow dr=dt.NewRow();
dr["name"]="name1";
dr["psw"]="psw1";
dt.Rows.Add(dr);
DataGrid1.DataSource=dt;
DataGrid1.DataBind();
如果改成VB语言怎么改能 多谢sunjay117(贱人一个) 大哥啊
Dim dt As New DataTable
dt.Columns.Add("name")
dt.Columns.Add("upi") Dim dr As DataRow
dr = dt.NewRow
dr("name") = TextBox1.Text
dr("upi") = TextBox5.Text
dt.Rows.Add(dr)
DataGrid1.DataSource = dt
DataGrid1.DataBind()
End Sub我做好了,做是可以做,但是每次datagrid只能显示前一次的输入 应该怎么控制一下?
Dim dt As New DataTable 设成全局变量? 应该在哪里设?