求 解决vs啊。。。。
using System;using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Data.SqlClient;
using System.Configuration;
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
BindData();
}
}
public void BindData()
{
string strcon = ConfigurationManager.ConnectionStrings["shujukuConnection"].ConnectionString;
string selstr = "select * from Good";
SqlConnection conn = new SqlConnection(strcon);
SqlDataAdapter da = new SqlDataAdapter(selstr, conn);
conn.Open();
DataSet ds = new DataSet();
da.Fill(ds);
this.GridView1.DataSource = ds;
this.GridView1.DataKeyNames = new string[] { "GoodsID" };
this.GridView1.DataBind();
conn.Close();
}
public void ExceSql(string s)
{
string strcon = ConfigurationManager.ConnectionStrings["shujukuConnection"].ConnectionString;
SqlConnection conn = new SqlConnection(strcon);
SqlCommand comm = new SqlCommand(s, conn);
conn.Open();
int i = comm.ExecuteNonQuery();
conn.Close();
BindData();
}
protected void Grid_Editing(object sender, GridViewEditEventArgs e)
{
GridView1.EditIndex = e.NewEditIndex;
BindData();
}
protected void Grid_Updating(object sender, GridViewUpdateEventArgs e)
{
string GoodsID = GridView1.DataKeys[e.RowIndex].Value.ToString();
string GoodsName = ((TextBox)(GridView1.Rows[e.RowIndex].Cells[1].Controls[0])).Text.ToString().Trim();
string GoodsKind = ((TextBox)(GridView1.Rows[e.RowIndex].Cells[2].Controls[0])).Text.ToString().Trim();
string GoodsPrice = ((TextBox)(GridView1.Rows[e.RowIndex].Cells[3].Controls[0])).Text.ToString().Trim();
string GoodsNumber = ((TextBox)(GridView1.Rows[e.RowIndex].Cells[4].Controls[0])).Text.ToString().Trim();
string upstr = "update Good set GoodsName='" + GoodsName + "' GoodsPrice= '" + GoodsPrice + "' GoodsNumber= '" + GoodsNumber + "'GoodsKind= '" + GoodsKind + "'where GoodsID=" + GoodsID;
ExceSql(upstr);
Response.Write("<script>alert('修改成功')</script>");
//string GoodsID = GridView1.DataKeys[e.RowIndex].Value.ToString();
//string GoodsName = ((TextBox)(GridView1.Rows[e.RowIndex].Cells[1].Controls[0])).Text.ToString().Trim();
//string GoodsPrice = ((TextBox)(GridView1.Rows[e.RowIndex].Cells[2].Controls[0])).Text.ToString().Trim();
//string GoodsNumber = ((TextBox)(GridView1.Rows[e.RowIndex].Cells[3].Controls[0])).Text.ToString().Trim();
//string GoodsKind = ((TextBox)(GridView1.Rows[e.RowIndex].Cells[3].Controls[0])).Text.ToString().Trim();
//string upstr = "update Good set GoodsName='" + GoodsName + "' GoodsPrice= '" + GoodsPrice + "' GoodsNumber= '" + GoodsNumber + "'GoodsKind= '" + GoodsKind + "'where GoodsID=" + GoodsID;
//ExceSql(upstr);
//Response.Write("<script>alert('修改成功')</script>");
}
protected void Grid_PageChanging(object sender, GridViewPageEventArgs e)
{
this.GridView1.PageIndex = e.NewPageIndex;
BindData();
}
protected void Grid_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e)
{
GridView1.EditIndex = -1;
BindData();
}
}
'GoodsPrice' 附近有语法错误。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。
异常详细信息: System.Data.SqlClient.SqlException: 'GoodsPrice' 附近有语法错误。
源错误:
行 46: SqlCommand comm = new SqlCommand(s, conn);
行 47: conn.Open();
*行 48: int i = comm.ExecuteNonQuery();
行 49: conn.Close();
行 50: BindData(); system string --------------------编程问答-------------------- string upstr = "update Good set GoodsName='" + GoodsName + "', GoodsPrice= " + GoodsPrice + ", GoodsNumber= " + GoodsNumber + ",GoodsKind= '" + GoodsKind + "' where GoodsID=" + GoodsID;
试试这样还有错误吗 --------------------编程问答-------------------- 你这SQL语法都不对啊
注意数字类型的,不用单引号 --------------------编程问答-------------------- string upstr = "update Good set GoodsName='" + GoodsName + "' GoodsPrice= '" + GoodsPrice + "' GoodsNumber= '" + GoodsNumber + "'GoodsKind= '" + GoodsKind + "'where GoodsID=" + GoodsID;
这要逗号吗
string upstr = "update Good set GoodsName='" + GoodsName + "',GoodsPrice= '" + GoodsPrice + "',GoodsNumber= '" + GoodsNumber + "'GoodsKind= '" + GoodsKind + "'where GoodsID=" + GoodsID; --------------------编程问答-------------------- 每个更新字段后 要加逗号,数字类型加不加引号都没关系 --------------------编程问答-------------------- --------------------编程问答-------------------- this.GridView1.DataKeyNames = new string[] { "GoodsID" }; 改为 this.GridView1.DataKeyNames = new string[] {GoodsID}; 试试看 --------------------编程问答--------------------
string upstr =
String.Format(
"update Good set GoodsName='{0}', GoodsPrice= '{1}', GoodsNumber= '{2}', GoodsKind= '{3}' where GoodsID={4}",
GoodsName, GoodsPrice, GoodsNumber, GoodsKind, GoodsID);
补充:.NET技术 , ASP.NET