我编写更新代码,但我遇到了错误.关键字"where"附近的语法不正确. [英] I write code for update but iam getting the error . Incorrect syntax near the keyword 'where'.

查看:70
本文介绍了我编写更新代码,但我遇到了错误.关键字"where"附近的语法不正确.的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

尊敬的专家,
请帮我解决这个错误....
mycode是这个..

源代码..

Dear Experts,
plz help me the error....
mycode is this..

Source code..

<form id="form1" runat="server">
<asp:ToolkitScriptManager ID="ScriptManager1" runat="server">
</asp:ToolkitScriptManager>
<div>
<asp:GridView runat="server" ID="gvdetails" DataKeyNames="UserId" AutoGenerateColumns="false">
<RowStyle BackColor="#EFF3FB" />
<FooterStyle BackColor="#507CD1" Font-Bold="True" ForeColor="White" />
<PagerStyle BackColor="#2461BF" ForeColor="White" HorizontalAlign="Center" />
<HeaderStyle BackColor="#507CD1" Font-Bold="True" ForeColor="White" />
<AlternatingRowStyle BackColor="White" />
<Columns>
<asp:TemplateField HeaderText="Edit">
<ItemTemplate>
<asp:ImageButton ID="imgbtn" ImageUrl="~/Edit.jpg" runat="server" Width="25" Height="25" onclick="imgbtn_Click" />
</ItemTemplate>
</asp:TemplateField>

<asp:BoundField DataField="Short_Message" HeaderText="Short_Message" />
<asp:BoundField DataField="Long_Message" HeaderText="Long_Message" />
</Columns>
</asp:GridView>
<asp:Label ID="lblresult" runat="server"/>
<asp:Button ID="btnShowPopup" runat="server" style="display:none" />
<asp:ModalPopupExtender ID="ModalPopupExtender1" runat="server" TargetControlID="btnShowPopup" PopupControlID="pnlpopup"

CancelControlID="btnCancel" BackgroundCssClass="modalBackground">
</asp:ModalPopupExtender>
<asp:Panel ID="pnlpopup" runat="server" BackColor="White" Height="269px" Width="400px" style="display:none">
<table width="100%" style="border:Solid 3px #D55500; width:100%; height:100%" cellpadding="0" cellspacing="0">
<tr style="background-color:#D55500">
<td colspan="2" style=" height:10%; color:White; font-weight:bold; font-size:larger" align="center">User Details</td>
</tr>
<tr>
<td align="right" style=" width:45%">
UserId:
</td>
<td>
<asp:Label ID="lblID" runat="server"></asp:Label>
</td>
</tr>

<tr>
<td align="right">
Short_Message
</td>
<td>
<asp:TextBox ID="txtShort_Message" runat="server"/>
</td>
</tr>
<tr>
<td align="right">
Long_Message
</td>
<td>
<asp:TextBox ID="txtLong_Message" runat="server"/>
</td>
</tr>


<tr>
<td>
</td>
<td>
<asp:Button ID="btnUpdate" CommandName="Update" runat="server" Text="Update" onclick="btnUpdate_Click"/>
<asp:Button ID="btnCancel" runat="server" Text="Cancel" />
</td>
</tr>
</table>
</asp:Panel>
</div>
</form>



C#代码



C# code

using AjaxControlToolkit;

public partial class _Default : System.Web.UI.Page
{
SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["dbconnection"].ToString());
protected void Page_Load(object sender, EventArgs e)
{
if(!IsPostBack)
{
BindGridData();
}
}
protected void BindGridData()
{
con.Open();
SqlCommand cmd = new SqlCommand("Select * from Employee_Details", con);
SqlDataAdapter da = new SqlDataAdapter(cmd);
DataTable dt = new DataTable();
da.Fill(dt);
gvdetails.DataSource = dt;
gvdetails.DataBind();
}
protected void btnUpdate_Click(object sender, EventArgs e)
{
con.Open();
SqlCommand cmd = new SqlCommand("update Employee_Details set Short_Message=@Short_Message,Long_Message=@Long_Message,where UserId=@UserId", con);
cmd.Parameters.AddWithValue("@Short_Message", txtShort_Message.Text);
cmd.Parameters.AddWithValue("@Long_Message", txtLong_Message.Text);

cmd.Parameters.AddWithValue("@UserId", Convert.ToInt32(lblID.Text));
cmd.ExecuteNonQuery();
con.Close();
//lblresult.Text = lblusername.Text + " Details Updated Successfully";
lblresult.ForeColor = Color.Green;
BindGridData();
}
protected void imgbtn_Click(object sender, ImageClickEventArgs e)
{
ImageButton btndetails = sender as ImageButton;
GridViewRow gvrow = (GridViewRow)btndetails.NamingContainer;
lblID.Text = gvdetails.DataKeys[gvrow.RowIndex].Value.ToString();
//lblusername.Text = gvrow.Cells[1].Text;
txtShort_Message.Text = gvrow.Cells[1].Text;
txtLong_Message.Text = gvrow.Cells[2].Text;
//txtCity.Text = gvrow.Cells[4].Text;
//txtDesg.Text = gvrow.Cells[5].Text;
this.ModalPopupExtender1.Show();
}

推荐答案


检查此
Hi ,
Check this
SqlCommand cmd = new SqlCommand("update Employee_Details set Short_Message=@Short_Message,Long_Message=@Long_Message where UserId=@UserId", con);


最好的问候
M.Mitwalli


Best Regards
M.Mitwalli


在...之前删除逗号.

remove comma before where ...

SqlCommand cmd = new SqlCommand("update Employee_Details set Short_Message=@Short_Message,Long_Message=@Long_Message where UserId=@UserId", con);


这篇关于我编写更新代码,但我遇到了错误.关键字"where"附近的语法不正确.的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆