我用xp系统,数据库可以读.并已经设置好权限(everyone完全),dataset已经写入进去,oleDbDataAdapter1.Update(mydataDataSet1);能编译过去 执行也没错误,但就是写不进去,我用了单个方法:
OleDbConnection con = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|DataDirectory|\\mydata.mdb");
OleDbCommand com = new OleDbCommand("insert into admin (姓名,性别,家庭住址,联系方式) values ('dddd','bb','ffff','eeeee')",con);
//oleDbConnection1.Open();
con.Open();
com.ExecuteNonQuery();
con.Close();
可以执行,但是也无法写入.
我用oleDbDataAdapter1的插入测试的时候可以写入进去.不知道这个是什么原因,困扰我n个星期了.
OleDbConnection con = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|DataDirectory|\\mydata.mdb");
OleDbCommand com = new OleDbCommand("insert into admin (姓名,性别,家庭住址,联系方式) values ('dddd','bb','ffff','eeeee')",con);
//oleDbConnection1.Open();
con.Open();
com.ExecuteNonQuery();
con.Close();
可以执行,但是也无法写入.
我用oleDbDataAdapter1的插入测试的时候可以写入进去.不知道这个是什么原因,困扰我n个星期了.
从语法角度没有问题,我在本机上试了,也没有问题(是不是access要设置共享模式?),既然你这么急,就换个方式: DataTable dt=dataSet1.Tables["UserManager"];
DataRow dr = dt.NewRow();
dr["UserName"] = UserName.Text;
dr["UserTel"] = UserTel.Text;
dr["UserAddr"] = UserAddr.Text;
dt.Rows.Add(dr); oleDA.Update(dataSet1, "UserManager");
OleDbCommandBuilder builder=new OleDbCommandBuilder(sda);
DataSet ds=new DataSet();
sda.Fill(ds,"student");
把你的插入语句复制到该视图看是否能成功 如果能则是你的程序问题否则是你的数据库问题
数据库的话执行中会有提示
private void button2_Click(object sender, EventArgs e)
{
OleDbConnection con = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|DataDirectory|\\mydata.mdb");
OleDbCommand com = new OleDbCommand("insert into admin (姓名,性别,家庭住址,联系方式) values ('dddd','bb','ffff','eeeee')",con);
//oleDbConnection1.Open();
con.Open();
com.ExecuteNonQuery();
con.Close();
//oleDbConnection1.Close();
}
能否将数据存入数据库?
DataRow dr = dt.NewRow();
dr["UserName"] = UserName.Text;
dr["UserTel"] = UserTel.Text;
dr["UserAddr"] = UserAddr.Text;
dt.Rows.Add(dr); oleDA.Update(dataSet1, "UserManager");