以下两个程序分别要完成access 的更新与删除问题功能.但是它们不能完成相应的功能,又没有报错,请各位帮忙看看.删除程序
private void Button1_Click(object sender, System.EventArgs e)
{
string connString=@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" +Server.MapPath(@".\db1.mdb");
OleDbConnection conn=new OleDbConnection(connString);
string sql="DELETE from table1 where NO='119'"; //?
OleDbCommand cmd=new OleDbCommand(sql,conn);
conn.Open();
cmd.ExecuteReader();
conn.Close();
conn.Close();
string sql2="select * from table1";
OleDbCommand cmd2=new OleDbCommand(sql2,conn);
conn.Open();
this.DataGrid2.DataSource=cmd2.ExecuteReader();
this.DataGrid2.DataBind();
conn.Close();
}
更新程序
private void Button1_Click(object sender, System.EventArgs e)
{
string connString=@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" +Server.MapPath(@".\db1.mdb");
OleDbConnection conn=new OleDbConnection(connString);
string sql="UPDATE table1 SET AGE='11111' WHERE NO='112'"; //?
OleDbCommand cmd=new OleDbCommand(sql,conn);
conn.Open();
cmd.ExecuteReader();
conn.Close();
conn.Close();
string sql2="select * from table1";
OleDbCommand cmd2=new OleDbCommand(sql2,conn);
conn.Open();
this.DataGrid2.DataSource=cmd2.ExecuteReader();
this.DataGrid2.DataBind();
conn.Close();
}
private void Button1_Click(object sender, System.EventArgs e)
{
string connString=@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" +Server.MapPath(@".\db1.mdb");
OleDbConnection conn=new OleDbConnection(connString);
string sql="DELETE from table1 where NO='119'"; //?
OleDbCommand cmd=new OleDbCommand(sql,conn);
conn.Open();
cmd.ExecuteReader();
conn.Close();
conn.Close();
string sql2="select * from table1";
OleDbCommand cmd2=new OleDbCommand(sql2,conn);
conn.Open();
this.DataGrid2.DataSource=cmd2.ExecuteReader();
this.DataGrid2.DataBind();
conn.Close();
}
更新程序
private void Button1_Click(object sender, System.EventArgs e)
{
string connString=@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" +Server.MapPath(@".\db1.mdb");
OleDbConnection conn=new OleDbConnection(connString);
string sql="UPDATE table1 SET AGE='11111' WHERE NO='112'"; //?
OleDbCommand cmd=new OleDbCommand(sql,conn);
conn.Open();
cmd.ExecuteReader();
conn.Close();
conn.Close();
string sql2="select * from table1";
OleDbCommand cmd2=new OleDbCommand(sql2,conn);
conn.Open();
this.DataGrid2.DataSource=cmd2.ExecuteReader();
this.DataGrid2.DataBind();
conn.Close();
}
解决方案 »
- C++ 调用 C#, string设置不了
- 想往access数据库里读数据,运行提示输入字符串的格式不正确。
- 求教,下面代码如何重构?
- 求助:将字符串中的数据全部加1
- 请教:C#怎么将一行字符串中包含的字符转换成数字提取出来?
- web.config整合问题
- C# winform中,有一个DATAGRID1,怎样让其时间显示的格式带年月日时,分,秒?
- 如何在退出子窗体的时候让主窗体刷新?
- DataRow中RowFilter疑难请教
- 我的dotnet 环境出现了->符号怎么去掉?
- 串口,我将串口的初始化数据放在XML中,当我把XML中的数据用变量传给SerialPort类时,有三个数据乍处理???
- C#多线程的问题
cmd.ExecuteNonQuery()
conn.Close();
conn.Open();
cmd.ExecuteReader();
conn.Close();
你这是读取数据的,用cmd.ExecuteNonQuery()吧!
更新的也是一样。
private void Button1_Click(object sender, System.EventArgs e)
{
string connString=@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" +Server.MapPath(@".\db1.mdb");
OleDbConnection conn=new OleDbConnection(connString); string sql="DELETE from table1 where NO='119'"; //?
OleDbCommand cmd=new OleDbCommand(sql,conn);
conn.Open();
cmd.ExecuteNonQuery();
conn.Close(); coon.Open();
string sql2="select * from table1";
OleDbDataAdapter da=new OleDbDataAdapter(sql2,conn);
DataSet ds=new DataSet();
da.Fill(ds);
this.DataGrid2.DataSource=ds;
this.DataGrid2.DataBind();
conn.Close();
}
更新程序
private void Button1_Click(object sender, System.EventArgs e)
{
string connString=@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" +Server.MapPath(@".\db1.mdb");
OleDbConnection conn=new OleDbConnection(connString); string sql="UPDATE table1 SET AGE='11111' WHERE NO='112'"; //?
OleDbCommand cmd=new OleDbCommand(sql,conn);
conn.Open();
cmd.ExecuteNonQuery();
conn.Close(); conn.Open();
string sql2="select * from table1";
OleDbDataAdapter da=new OleDbDataAdapter(sql2,conn);
DataSet ds=new DataSet();
da.Fill(ds);
this.DataGrid2.DataSource=ds;
this.DataGrid2.DataBind();
conn.Close();
}
正确的删除,修改...
private void Button1_Click(object sender, System.EventArgs e)
{
string connString=@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" +Server.MapPath(@".\db1.mdb");
OleDbConnection conn=new OleDbConnection(connString);
//string sql="select * from table1 where age="+TextBox1.Text+"";
string sql="DELETE from table1 where NO='"+TextBox1.Text+"'"; //?
OleDbCommand cmd=new OleDbCommand(sql,conn); conn.Open();
cmd.ExecuteNonQuery();
conn.Close();
string sql2="select * from table1";
OleDbCommand cmd2=new OleDbCommand(sql2,conn);
conn.Open();
this.DataGrid2.DataSource=cmd2.ExecuteReader();
this.DataGrid2.DataBind();
conn.Close();
} private void Button2_Click(object sender, System.EventArgs e)
{
string connString=@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" +Server.MapPath(@".\db1.mdb");
OleDbConnection conn=new OleDbConnection(connString);
//string insertstr="INSERT INTO table1([NAME],[no],[age]) values ('他','569','100')"; //对
string insertstr="INSERT INTO table1([NAME],[no],[age]) values ( '"+TextBox2.Text+"','"+TextBox3.Text+"','"+TextBox4.Text+"')";
OleDbCommand cmd=new OleDbCommand(insertstr,conn);
conn.Open();
cmd.ExecuteReader();
conn.Close(); string sql="select * from table1";
OleDbCommand cmd1=new OleDbCommand(sql,conn);
conn.Open();
this.DataGrid2.DataSource=cmd1.ExecuteReader();
this.DataGrid2.DataBind();
conn.Close();
} private void Button3_Click(object sender, System.EventArgs e)
{
string connString=@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" +Server.MapPath(@".\db1.mdb");
OleDbConnection conn=new OleDbConnection(connString);
//string sql="select * from table1 where age="+TextBox1.Text+"";
string sql="UPDATE table1 SET AGE='11111' WHERE NO='112'"; //?
OleDbCommand cmd=new OleDbCommand(sql,conn); conn.Open();
cmd.ExecuteNonQuery();
conn.Close();
string sql2="select * from table1";
OleDbCommand cmd2=new OleDbCommand(sql2,conn);
conn.Open();
this.DataGrid2.DataSource=cmd2.ExecuteReader();
this.DataGrid2.DataBind();
conn.Close();
}
删除和更新既没有报错,也没有达到操作的目标,不过插入能正确地完成任务.
要不你们把上面的代码拷下来到自己的机上试试,如果能的说一声.
private void Button1_Click(object sender, System.EventArgs e)
{
string connString=@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" +Server.MapPath(@".\db1.mdb");
OleDbConnection conn=new OleDbConnection(connString); string sql="DELETE from table1 where NO='119'";//NO字段是什么类型?若是整形,要改成NO=119。
OleDbCommand cmd=new OleDbCommand(sql,conn);
conn.Open();
cmd.ExecuteReader();
conn.Close(); //conn.Close(); //不用关两次
string sql2="select * from table1";
//OleDbCommand cmd2=new OleDbCommand(sql2,conn); //应改用OleDbDataAdapter
//conn.Open(); //用OleDbDataAdapter的话就不用Open
OleDbDataAdapter da=new OleDbDataAdapter(sql2,conn);
DataSet ds=new DataSet();
da.Fill(ds);
//this.DataGrid2.DataSource=cmd2.ExecuteReader();
this.DataGrid2.DataSource=ds.Tables[0];
this.DataGrid2.DataBind();
//conn.Close();
}