string str="server=localhost;uid=sa;pwd=;database=test";
SqlConnection conn=new SqlConnection(str);
//conn.Open();
string sql="select * from stores";
SqlDataAdapter adapter=new SqlDataAdapter(sql,conn);
DataSet dataset=new DataSet();
adapter.Fill(dataset,"stores");
DataTable table=dataset.Tables["stores"];
DataRow myrow=table.NewRow();
myrow["stor_id"]=9999;
myrow["stor_name"]="king";
myrow["stor_address"]="hazu";
myrow["city"]="wuhan";
myrow["state"]="china";
myrow["zip"]="12345";
table.Rows.Add(myrow);
adapter.Update(dataset,"stores");
这段代码是在WINDOWS应用程序里面的,不知道为什么不能更新数据库呢??
更新数据库到底怎么样进行呀?有没有这方面的详细点的资料呀?兄弟们帮帮小弟忙呀!!!
SqlConnection conn=new SqlConnection(str);
//conn.Open();
string sql="select * from stores";
SqlDataAdapter adapter=new SqlDataAdapter(sql,conn);
DataSet dataset=new DataSet();
adapter.Fill(dataset,"stores");
DataTable table=dataset.Tables["stores"];
DataRow myrow=table.NewRow();
myrow["stor_id"]=9999;
myrow["stor_name"]="king";
myrow["stor_address"]="hazu";
myrow["city"]="wuhan";
myrow["state"]="china";
myrow["zip"]="12345";
table.Rows.Add(myrow);
adapter.Update(dataset,"stores");
这段代码是在WINDOWS应用程序里面的,不知道为什么不能更新数据库呢??
更新数据库到底怎么样进行呀?有没有这方面的详细点的资料呀?兄弟们帮帮小弟忙呀!!!
adapter的InsertCommand
你可以使用CommandBuilder直接生成命令
cb=new SqlCommandBuilder(adapter);
我在以前的ADO里面好象是可以这样的呀?
为什么在ADO。NET就不行呢?
楼上的兄弟说加InsertCommand
应该怎么样加呀?
请帮我写代码谢谢。
SqlConnection conn=new SqlConnection(str);
string sql="select * from stores";
SqlDataAdapter adapter=new SqlDataAdapter(sql,conn);
SqlCommandBuilder cb=new SqlCommandBuilder(adapter);//1
DataSet dataset=new DataSet();
conn.Open(); //2
adapter.Fill(dataset,"stores");
DataTable table=dataset.Tables["stores"];
DataRow myrow=table.NewRow();
myrow["stor_id"]=9999;
myrow["stor_name"]="king";
myrow["stor_address"]="hazu";
myrow["city"]="wuhan";
myrow["state"]="china";
myrow["zip"]="12345";
table.Rows.Add(myrow);
adapter.Update(dataset,"stores");
conn.Close(); //3
这样就可以啦,注意我添加的这三行。
请大家帮帮忙呀
我是新手,对数据库操作真是不通呀
特别是那几个关于数据库的类,我就是弄不怎么明白,MSDN里面讲得太专业话,有没有大哥能够给我讲讲那几个类,或是在哪里可以找到那几个类的资料呀。
我加分请大家帮忙呀!!
这句更新的是table,而不是dataSet,所以table可以去掉换成这一句:
dataset.Tables["stores"].Rows.Add(myrow);最前面再加一句
SqlCommandBuilder cb=new SqlCommandBuilder(adapter);
这句用来自动生成adapter的updatecommand,insertcommand,deletecommand,当然你也可以自己写------------------------------------
SqlConnection conn=new SqlConnection(str);
SqlDataAdapter adapter=new SqlDataAdapter("select * from stores",conn);
SqlCommandBuilder scb=new SqlCommandBuilder(adapter);
conn.Open();
DataSet ds=new DataSet();
adapter.Fill(ds,"stores");
conn.Close();
DataTable dt=ds.Tables["stores"];
DataRow myrow=dt.NewRow();
myrow["stor_id"]=9999;
myrow["stor_name"]="king";
myrow["stor_address"]="hazu";
myrow["city"]="wuhan";
myrow["state"]="china";
myrow["zip"]="12345";
ds.Tables["stores"].Rows.Add(myrow);
adapter.Update(ds,"stores");
Console.WriteLine("修改成功");
Console.Read();我这样还是不行 不知道是怎么回事呀??