C# DataSet更新不了数据库

oledap.Fill(ds,"dfdf");DataRow[]drCurrent=ds.Tables["dfdf"].Select("sd='asdfasf'");if... oledap.Fill(ds, "dfdf");
DataRow []drCurrent = ds.Tables["dfdf"].Select("sd='asdfasf'");
if (drCurrent.Length == 0) MessageBox.Show("0000");
else
{
drCurrent[0].Delete();
ds.Tables["dfdf"].AcceptChanges();

}
MessageBox.Show(oledap.Update(ds, "dfdf").ToString());

//结果:0 //即更新0行..
我的测试:
ds,未删除行时:count=3
执行删除count=2
但是执行update时.返回0?????为什么,,??我找了两天了...
用一个oledap.DeleteCommand的对象可以删除,不过不是用DataSet更新的,而且还要新定义一个Connection对象,,我试过的,可以删除,
但我还是想问DataSet更新的方法,,,,谁帮我看看..谢谢
测试过:
drCurrent.Length =1

灵雨飘零 朋友,,谢谢您的回答,,
想问下.
OleDbCommandBuilder 申请了,有什么用
展开
 我来答
灵雨飘零
2008-04-08
知道答主
回答量:19
采纳率:0%
帮助的人:14.5万
展开全部
这是链接Access数据库的一个例子,希望对你有用!

public class DBCon
{
string strCon;
string strPath;
public DBCon()
{
strPath = Application.StartupPath + "\\Drawing.mdb";
strCon = "Provider=Microsoft.Jet.OLEDB.4.0;Data source=" + strPath;

}
public DBCon(string dbCon)
{
this.strCon = dbCon;
}

//查询语句
public DataSet Query(string strSql)
{
DataSet ds = new DataSet();
using(OleDbConnection oleCon=new OleDbConnection(strCon))
{
OleDbDataAdapter oleDap = new OleDbDataAdapter(strSql,strCon);
oleDap.Fill(ds);
}
return ds;
}

public object Scale(string strSql)
{
object obj="";
using (OleDbConnection oleCon = new OleDbConnection(strCon))
{
oleCon.Open();
OleDbCommand oleCom = new OleDbCommand();
oleCom.Connection = oleCon;
oleCom.CommandText = strSql;
obj = oleCom.ExecuteScalar();
}
return obj;
}

//增删改语句
public int Updata(string strSql)
{
int t = 0;
using (OleDbConnection oleCon = new OleDbConnection(strCon))
{
oleCon.Open();
OleDbCommand oleCom = new OleDbCommand();
oleCom.Connection = oleCon;
oleCom.CommandText = strSql;
t = oleCom.ExecuteNonQuery();
}
return t;
}

//更新dataset实现添加修改删除

public void Updata(string strSql,DataSet ds)
{
using (OleDbConnection oleCon = new OleDbConnection())
{
OleDbDataAdapter oleDap = new OleDbDataAdapter(strSql,strCon);
OleDbCommandBuilder oleComBuilder = new OleDbCommandBuilder();
oleDap.Update(ds);
}
}
}
今至电子科技有限公司
2024-08-23 广告
数据库备份是确保数据安全与业务连续性的关键环节。我们上海今至电子科技有限公司高度重视数据保护,定期执行全面的数据库备份策略。这包括使用先进工具和技术,对关键业务数据进行自动化备份,并存储在安全可靠的外部存储介质或云端。通过定期验证备份的完整... 点击进入详情页
本回答由今至电子科技有限公司提供
以画屏屏8748
2008-04-07 · TA获得超过7191个赞
知道大有可为答主
回答量:2581
采纳率:0%
帮助的人:3312万
展开全部
DataTable dt1 = new DataTable();

dt1.Columns.Add("id");
dt1.Columns.Add("carId");
dt1.Columns.Add("picName");
dt1.Columns.Add("picSize");
dt1.Columns.Add("picMemo");
dt1.Columns.Add("CarNum");
dt1.Columns.Add("PgPrice");

DataRow dr = dt1.NewRow();

dr["id"] = dr1["id"];
dr["carId"] = dr1["carId"];
dr["picName"] = dr1["picName"];
dr["picSize"] = dr1["picSize"];
dr["picMemo"] = dr1["picMemo"];
dr["CarNum"] = dr1["CarNum"];
dr["PgPrice"] = dr1["PgPrice"];

dt1.Rows.Add(dr);
插入之前判断文本框的值,如果为空,则赋值System.DBNull.Value
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
forever61641
2008-04-14
知道答主
回答量:2
采纳率:0%
帮助的人:0
展开全部
灵雨飘零 朋友,,谢谢您的回答,, 不过您的一些代码,我看不太懂,
这个后面的代码是什么意思,,//更新dataset实现添加修改删除
还有using 怎么有这个用法,,没见过,,还有,,对象OleDbCommandBuilder 申请了,没看到作用,,为什么要申请??

谢谢

??到底是什么作用啊...
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式