SQL update更新问题

chen537840 2009-04-30 01:09:47
protected void Button10_Click(object sender, EventArgs e)
{
string strSQL = "select JM_ID,JM_Title,JM_Url,JM_Url1,JM_Url2 from JM_Datas";
OleDbDataAdapter da = new OleDbDataAdapter(strSQL, conn);
DataTable dt = new DataTable();
da.Fill(dt);
foreach (DataRow dr in dt.Rows)
{
int ID= Convert.ToInt32(dr["JM_ID"].ToString());
string strTitle = dr["JM_Title"].ToString();
string strUrl = dr["JM_Url"].ToString();
string strUrl1 = dr["JM_Url1"].ToString();
string strUrl2 = dr["JM_Url2"].ToString();
strUrl = HtmlDiscode(strUrl);
strUrl1 = HtmlDiscode(strUrl2);
strUrl2 = HtmlDiscode(strUrl2);
string strUp = "update JM_Datas set JM_Url='" + strUrl + "' and JM_Url1='" + strUrl1 + "' and JM_Url2='" + strUrl2 + "' where JM_Title='" + strTitle + "' and JM_ID=" + ID;
OleDbCommand cmdUp = new OleDbCommand(strUp, conn);
conn.Open();
cmdUp.ExecuteNonQuery();
conn.Close();
}
}

/// <summary>
/// 替换字符串函数
/// </summary>
/// <param name="theString">需要替换的字符串</param>
/// <returns>返回替换好的字符串</returns>
public string HtmlDiscode(string theString)
{
theString = theString.Replace("[www.maizi6.com]", "[www.558TV.com]");
theString = theString.Replace("[maizi6.com]", "[www.558TV.com]");
theString = theString.Replace("[www.chinaying.net]", "[www.558TV.com]");
theString = theString.Replace("(qvodzy.com.cn)", "[www.558TV.com]");
theString = theString.Replace("麦子乐", "小猪影视");
return theString;
}
为什么我更新的数据都变为空,-1,或0,断点测试update语句也没错!哪位高人知道?
...全文
148 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
chen537840 2009-04-30
  • 打赏
  • 举报
回复
谢谢 ouyang3857116的朋友,果然是不能用and,结贴了
ouyang3857116 2009-04-30
  • 打赏
  • 举报
回复
Update的时候能用and吗?
把and改成逗号看看
"update JM_Datas set JM_Url='" + strUrl + "', JM_Url1='" + strUrl1 + "',JM_Url2='" + strUrl2 + "' where JM_Title='" + strTitle + "' and JM_ID=" + ID;
firefly_2008 2009-04-30
  • 打赏
  • 举报
回复
問題很奇怪,你還是先把你的SQL語句輸出來放Query里調試一下看看結果可對?
s1234567 2009-04-30
  • 打赏
  • 举报
回复
我怀疑“da.Fill(dt);”根本就没有把数据灌进去。
你查一下查询的时候,conn是否也应当open啊。
chen537840 2009-04-30
  • 打赏
  • 举报
回复
晕死!单条数据用lable测试一点问题都没,肯定是循环出了问题,找不出来,好像句子也没错误,头大了
takeshe 2009-04-30
  • 打赏
  • 举报
回复
这些东西测试的方法很好!多动脑就行了!这样进步更快!
chen537840 2009-04-30
  • 打赏
  • 举报
回复
先拿固定值测试一下吧
s1234567 2009-04-30
  • 打赏
  • 举报
回复
要是我的话,就把变量暂时用固定值实验一下,如ID=2, strTitle="myTitle"等,这样可以把问题的范围缩小。
chen537840 2009-04-30
  • 打赏
  • 举报
回复
断点查看update语句也是对的,为什么更新到数据库就会变成空,-1和0呢!郁闷
llsen 2009-04-30
  • 打赏
  • 举报
回复
你看你取到值没有
如果更新了数据
那应该更新成功了
只是值传错了

62,054

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧