请大家帮我看看我这条SQL语句哪错了

wylovemzc 2008-10-23 11:26:19
protected void Page_Load(object sender, EventArgs e)
{
if(!IsPostBack)
{
TextBox1.Text= Session["password"].ToString();
TextBox2.Text = Session["Nickname"].ToString();
TextBox3.Text = Session["Birthday"].ToString();
TextBox4.Text = Session["Education"].ToString();
TextBox5.Text = Session["Title"].ToString();
TextBox6.Text = Session["Post"].ToString();
TextBox7.Text = Session["Unit"].ToString();
TextBox8.Text = Session["OfficePhone"].ToString();
TextBox9.Text = Session["Fax"].ToString();
TextBox10.Text = Session["Email"].ToString();
}
}
protected void Button1_Click(object sender, EventArgs e)
{
try
{
string str = "Provider=Microsoft.Jet.OleDb.4.0;";
str += @"Data Source=" + Server.MapPath("~/App_Data/hxqlorg.mdb");
string UpdateStr = "Update member SET password='" + TextBox1.Text + "',Nickname='" + TextBox2.Text + "',Birthday='" + TextBox3.Text + "', Education='" + TextBox4.Text + "', Title='" + TextBox5.Text + "', Post='" + TextBox6.Text + "',Unit='" + TextBox7.Text + "',OfficePhone='" + TextBox8.Text + "',Fax='" + TextBox9.Text + "',Email='" + TextBox10.Text + "' WHERE Name='" + Session["Name"].ToString() + "'";
OleDbConnection con = new OleDbConnection(str);
//尽可能晚的打开连接,尽早的关闭连接
con.Open();
OleDbCommand com = new OleDbCommand(UpdateStr, con);
int a = com.ExecuteNonQuery();
if (a > 0)
{
Response.Write("<script>alert('更新成功!!')</script>");
}
}catch(Exception ex)
{
Response.Write(ex.ToString());
}
}

执行的时候说我Update语句语法错误
...全文
162 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
luyuans86 2008-10-24
  • 打赏
  • 举报
回复
用的access数据库,以前我写更新新闻的时候也遇到过,我也在查询分析器里试过,也没有问题

我就在sql字符串最后一个列名前写了个 and 列名 =value,

然后就行了,奇怪的很
fengylm 2008-10-24
  • 打赏
  • 举报
回复
调试才是王道,,再看看数据库里是不是有什么约束
aab 2008-10-24
  • 打赏
  • 举报
回复
没时间仔细看,不过建议你先检查下单双引号,还有就是要对一些关键词敏感 像member password等还是少用为妙。
  • 打赏
  • 举报
回复
调试下。跟踪那SQL语句看下不就知道了。估计是符号和值的问题.
jz_yxh 2008-10-24
  • 打赏
  • 举报
回复
response.write UpdateStr 写出来看看到底语句错在哪里
troy-zhou 2008-10-23
  • 打赏
  • 举报
回复
在SQL语名中尽可能的不要用这种名称如:password 之类的,你把你的password改成其他的试试
mzx87 2008-10-23
  • 打赏
  • 举报
回复
把拼接的sql语句打出来
copy到Access的查询里执行下 看什么地方出问题了
wylovemzc 2008-10-23
  • 打赏
  • 举报
回复
他就给我报Update语句语法错误,我放查询分析器里看也没错,这个郁闷啊
jiang_jiajia10 2008-10-23
  • 打赏
  • 举报
回复
把你的SQL调试的时候复制到查询分析器里看看那里出错误了。我检测过语法没有错误
snowfox_1985 2008-10-23
  • 打赏
  • 举报
回复
提示什么错误
SatSun 2008-10-23
  • 打赏
  • 举报
回复
全用Session 太夸张了吧
是不是服务器 内存是1T的我也就是知道硬盘刚有1T的 ,弄个用户名密码放里面算是大方的了
frankie_24 2008-10-23
  • 打赏
  • 举报
回复
看着眼晕,你跟一下,放到查询分析器里面看看就很清楚了.
lizhimin0310 2008-10-23
  • 打赏
  • 举报
回复
是不是输入的字符串中含有特殊字符,比方说单引号
dawnbear 2008-10-23
  • 打赏
  • 举报
回复
我日 你里面全是'''一个"还有一个', 不用'了 不仔细看还不知道啊
supremeholy 2008-10-23
  • 打赏
  • 举报
回复
protected void Button1_Click(object sender, EventArgs e)
{
try
{
string str = "Provider=Microsoft.Jet.OleDb.4.0;";
str += @"Data Source=" + Server.MapPath("~/App_Data/hxqlorg.mdb");
string UpdateStr = "Update member SET password='" + TextBox1.Text + "',Nickname='" + TextBox2.Text + "',Birthday='" + TextBox3.Text + "', Education='" + TextBox4.Text + "', Title='" + TextBox5.Text + "', Post='" + TextBox6.Text + "',Unit='" + TextBox7.Text + "',OfficePhone='" + TextBox8.Text + "',Fax='" + TextBox9.Text + "',Email='" + TextBox10.Text + "' WHERE Name='" + Session["Name"].ToString() + "'";
OleDbConnection con = new OleDbConnection(str);
//尽可能晚的打开连接,尽早的关闭连接
con.Open();
OleDbCommand com = new OleDbCommand(UpdateStr, con);
int a = com.ExecuteNonQuery();
if (a > 0)
{
Response.Write(" <script>alert('更新成功!!') </script>");
}
}catch(Exception ex)
{
string tempex=ex.ToString();
Response.Write(ex.ToString());//在此行设置断点,看tempex的具体内容。
}
}

62,046

社区成员

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

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

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

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