做一企业网站时遇到的,前提是:sql server数据层操作完全正确,无任何问题,但是,当我增加了ACCESS数据层时,更新产品无法更新(新闻正常,所以不存在权限问题)
CB_Article.Model.CB_Product model = new CB_Article.Model.CB_Product();
CB_Article.BLL.CB_Product bll = new CB_Article.BLL.CB_Product();
model.ArticleID = ArticleID;
model.Title = Title;
model.Product_Id = Author;
model.huiyuan =0;
model.cid = Convert.ToInt16(BigClassName);
model.Memo = "";
model.Itop = Convert.ToInt32(ctop);
model.Ihot = Convert.ToInt32(chot);
model.Icomm = Convert.ToInt32(ccomm);
if (bigPic != string.Empty)
{
model.bigpic = bigPic;
}
else
{
model.bigpic = bpic; }
if (SmallPic != string.Empty)
{
model.smallpic = SmallPic;
}
else
{
model.smallpic = spic; }
model.Content = Content;
model.AddDate = DateTime.Now;
model.grade = Grade;
model.Elite = Convert.ToInt16(sElite);
model.JiFen = int.Parse(jifen);
model.DiyField1_name = DiyField1_name;
model.DiyField2_name = DiyField2_name;
model.DiyField1_Content = DiyField1_content;
model.DiyField2_Content = DiyField2_content; try
{
bll.Update(model);
Response.Write("<script language=javascript>alert('编辑案例成功!');window.location.href='Admin_Product.aspx';</script>");
}
catch
{
CB_Article.Web.BaseClass.MessageBox.Show(this, "编辑案例失败!");
}这是ACCESS的数据层
/// <summary>
/// 更新一条数据
/// </summary>
public void Update(CB_Article.Model.CB_Product model)
{
StringBuilder strSql=new StringBuilder();
strSql.Append("update CB_Product set ");
strSql.Append("Product_Id=@Product_Id,");
strSql.Append("cid=@cid,");
strSql.Append("Title=@Title,");
strSql.Append("AddDate=@AddDate,");
strSql.Append("Elite=@Elite,");
strSql.Append("Content=@Content,");
strSql.Append("smallpic=@smallpic,");
strSql.Append("bigpic=@bigpic,");
strSql.Append("grade=@grade,");
strSql.Append("shichang=@shichang,");
strSql.Append("huiyuan=@huiyuan,");
strSql.Append("memo=@memo,");
strSql.Append("Ihot=@Ihot,");
strSql.Append("IComm=@IComm,");
strSql.Append("Itop=@Itop,");
strSql.Append("DiyField1_name=@DiyField1_name,");
strSql.Append("DiyField2_name=@DiyField2_name,");
strSql.Append("DiyField1_content=@DiyField1_content,");
strSql.Append("DiyField2_content=@DiyField2_content,");
strSql.Append("Jifen=@Jifen");
strSql.Append(" where ArticleID=@ArticleID");
OleDbParameter[] parameters = {
new OleDbParameter("@ArticleID", OleDbType.Integer,4),
new OleDbParameter("@Product_Id", OleDbType.VarChar,50),
new OleDbParameter("@cid", OleDbType.Integer,4),
new OleDbParameter("@Title", OleDbType.VarChar,150),
new OleDbParameter("@AddDate", OleDbType.Date),
new OleDbParameter("@Elite", OleDbType.Integer,4),
new OleDbParameter("@Content", OleDbType.VarChar,0),
new OleDbParameter("@smallpic", OleDbType.VarChar,250),
new OleDbParameter("@bigpic", OleDbType.VarChar,250),
new OleDbParameter("@grade", OleDbType.Integer,4),
new OleDbParameter("@shichang", OleDbType.Decimal),
new OleDbParameter("@huiyuan", OleDbType.Decimal),
new OleDbParameter("@memo", OleDbType.VarChar,0),
new OleDbParameter("@Ihot", OleDbType.Integer,4),
new OleDbParameter("@IComm", OleDbType.Integer,4),
new OleDbParameter("@Itop", OleDbType.Integer,4),
new OleDbParameter("@DiyField1_name", OleDbType.VarChar,50),
new OleDbParameter("@DiyField2_name", OleDbType.VarChar,50),
new OleDbParameter("@DiyField1_content", OleDbType.VarChar,200),
new OleDbParameter("@DiyField2_content", OleDbType.VarChar,200),
new OleDbParameter("@Jifen", OleDbType.Integer,4)};
parameters[0].Value = model.ArticleID;
parameters[1].Value = model.Product_Id;
parameters[2].Value = model.cid;
parameters[3].Value = model.Title;
parameters[4].Value = model.AddDate;
parameters[5].Value = model.Elite;
parameters[6].Value = model.Content;
parameters[7].Value = model.smallpic;
parameters[8].Value = model.bigpic;
parameters[9].Value = model.grade;
parameters[10].Value = model.shichang;
parameters[11].Value = model.huiyuan;
parameters[12].Value = model.Memo;
parameters[13].Value = model.Ihot;
parameters[14].Value = model.Icomm;
parameters[15].Value = model.Itop;
parameters[16].Value = model.DiyField1_name;
parameters[17].Value = model.DiyField2_name;
parameters[18].Value = model.DiyField1_Content;
parameters[19].Value = model.DiyField2_Content;
parameters[20].Value = model.JiFen; DbHelperOleDb.ExecuteSql(strSql.ToString(),parameters);
}
基本上完全一样,但就是无法更新,哪位可解?
CB_Article.Model.CB_Product model = new CB_Article.Model.CB_Product();
CB_Article.BLL.CB_Product bll = new CB_Article.BLL.CB_Product();
model.ArticleID = ArticleID;
model.Title = Title;
model.Product_Id = Author;
model.huiyuan =0;
model.cid = Convert.ToInt16(BigClassName);
model.Memo = "";
model.Itop = Convert.ToInt32(ctop);
model.Ihot = Convert.ToInt32(chot);
model.Icomm = Convert.ToInt32(ccomm);
if (bigPic != string.Empty)
{
model.bigpic = bigPic;
}
else
{
model.bigpic = bpic; }
if (SmallPic != string.Empty)
{
model.smallpic = SmallPic;
}
else
{
model.smallpic = spic; }
model.Content = Content;
model.AddDate = DateTime.Now;
model.grade = Grade;
model.Elite = Convert.ToInt16(sElite);
model.JiFen = int.Parse(jifen);
model.DiyField1_name = DiyField1_name;
model.DiyField2_name = DiyField2_name;
model.DiyField1_Content = DiyField1_content;
model.DiyField2_Content = DiyField2_content; try
{
bll.Update(model);
Response.Write("<script language=javascript>alert('编辑案例成功!');window.location.href='Admin_Product.aspx';</script>");
}
catch
{
CB_Article.Web.BaseClass.MessageBox.Show(this, "编辑案例失败!");
}这是ACCESS的数据层
/// <summary>
/// 更新一条数据
/// </summary>
public void Update(CB_Article.Model.CB_Product model)
{
StringBuilder strSql=new StringBuilder();
strSql.Append("update CB_Product set ");
strSql.Append("Product_Id=@Product_Id,");
strSql.Append("cid=@cid,");
strSql.Append("Title=@Title,");
strSql.Append("AddDate=@AddDate,");
strSql.Append("Elite=@Elite,");
strSql.Append("Content=@Content,");
strSql.Append("smallpic=@smallpic,");
strSql.Append("bigpic=@bigpic,");
strSql.Append("grade=@grade,");
strSql.Append("shichang=@shichang,");
strSql.Append("huiyuan=@huiyuan,");
strSql.Append("memo=@memo,");
strSql.Append("Ihot=@Ihot,");
strSql.Append("IComm=@IComm,");
strSql.Append("Itop=@Itop,");
strSql.Append("DiyField1_name=@DiyField1_name,");
strSql.Append("DiyField2_name=@DiyField2_name,");
strSql.Append("DiyField1_content=@DiyField1_content,");
strSql.Append("DiyField2_content=@DiyField2_content,");
strSql.Append("Jifen=@Jifen");
strSql.Append(" where ArticleID=@ArticleID");
OleDbParameter[] parameters = {
new OleDbParameter("@ArticleID", OleDbType.Integer,4),
new OleDbParameter("@Product_Id", OleDbType.VarChar,50),
new OleDbParameter("@cid", OleDbType.Integer,4),
new OleDbParameter("@Title", OleDbType.VarChar,150),
new OleDbParameter("@AddDate", OleDbType.Date),
new OleDbParameter("@Elite", OleDbType.Integer,4),
new OleDbParameter("@Content", OleDbType.VarChar,0),
new OleDbParameter("@smallpic", OleDbType.VarChar,250),
new OleDbParameter("@bigpic", OleDbType.VarChar,250),
new OleDbParameter("@grade", OleDbType.Integer,4),
new OleDbParameter("@shichang", OleDbType.Decimal),
new OleDbParameter("@huiyuan", OleDbType.Decimal),
new OleDbParameter("@memo", OleDbType.VarChar,0),
new OleDbParameter("@Ihot", OleDbType.Integer,4),
new OleDbParameter("@IComm", OleDbType.Integer,4),
new OleDbParameter("@Itop", OleDbType.Integer,4),
new OleDbParameter("@DiyField1_name", OleDbType.VarChar,50),
new OleDbParameter("@DiyField2_name", OleDbType.VarChar,50),
new OleDbParameter("@DiyField1_content", OleDbType.VarChar,200),
new OleDbParameter("@DiyField2_content", OleDbType.VarChar,200),
new OleDbParameter("@Jifen", OleDbType.Integer,4)};
parameters[0].Value = model.ArticleID;
parameters[1].Value = model.Product_Id;
parameters[2].Value = model.cid;
parameters[3].Value = model.Title;
parameters[4].Value = model.AddDate;
parameters[5].Value = model.Elite;
parameters[6].Value = model.Content;
parameters[7].Value = model.smallpic;
parameters[8].Value = model.bigpic;
parameters[9].Value = model.grade;
parameters[10].Value = model.shichang;
parameters[11].Value = model.huiyuan;
parameters[12].Value = model.Memo;
parameters[13].Value = model.Ihot;
parameters[14].Value = model.Icomm;
parameters[15].Value = model.Itop;
parameters[16].Value = model.DiyField1_name;
parameters[17].Value = model.DiyField2_name;
parameters[18].Value = model.DiyField1_Content;
parameters[19].Value = model.DiyField2_Content;
parameters[20].Value = model.JiFen; DbHelperOleDb.ExecuteSql(strSql.ToString(),parameters);
}
基本上完全一样,但就是无法更新,哪位可解?
/// <summary>
/// 更新一条数据
/// </summary>
public void Update(CB_Article.Model.CB_Product model)
{
StringBuilder strSql=new StringBuilder();
strSql.Append("update CB_Product set ");
strSql.Append("Product_Id=@Product_Id,");
strSql.Append("cid=@cid,");
strSql.Append("Title=@Title,");
strSql.Append("AddDate=@AddDate,");
strSql.Append("Elite=@Elite,");
strSql.Append("Content=@Content,");
strSql.Append("smallpic=@smallpic,");
strSql.Append("bigpic=@bigpic,");
strSql.Append("grade=@grade,");
strSql.Append("shichang=@shichang,");
strSql.Append("huiyuan=@huiyuan,");
strSql.Append("ihot=@ihot,");
strSql.Append("icomm=@icomm,");
strSql.Append("itop=@itop,");
strSql.Append("memo=@memo,");
strSql.Append("jifen=@jifen,");
strSql.Append("DiyField1_name=@DiyField1_name,");
strSql.Append("DiyField2_name=@DiyField2_name,");
strSql.Append("DiyField1_content=@DiyField1_content,");
strSql.Append("DiyField2_content=@DiyField2_content");
strSql.Append(" where ArticleID=@ArticleID ");
SqlParameter[] parameters = {
new SqlParameter("@ArticleID", SqlDbType.Int,4),
new SqlParameter("@Product_Id", SqlDbType.NText),
new SqlParameter("@cid", SqlDbType.Int,4),
new SqlParameter("@Title", SqlDbType.NVarChar,150),
new SqlParameter("@AddDate", SqlDbType.SmallDateTime),
new SqlParameter("@Elite", SqlDbType.Int,4),
new SqlParameter("@Content", SqlDbType.NText),
new SqlParameter("@smallpic", SqlDbType.NVarChar,250),
new SqlParameter("@bigpic", SqlDbType.NVarChar,250),
new SqlParameter("@grade", SqlDbType.Int,4),
new SqlParameter("@shichang", SqlDbType.Money,8),
new SqlParameter("@huiyuan", SqlDbType.Money,8),
new SqlParameter("@ihot", SqlDbType.Int,4),
new SqlParameter("@icomm", SqlDbType.Int,4),
new SqlParameter("@itop", SqlDbType.Int,4),
new SqlParameter("@memo", SqlDbType.NText),
new SqlParameter("@jifen", SqlDbType.Int,4),
new SqlParameter("@DiyField1_name", SqlDbType.NVarChar,200),
new SqlParameter("@DiyField2_name", SqlDbType.NVarChar,200),
new SqlParameter("@DiyField1_content", SqlDbType.NVarChar,200),
new SqlParameter("@DiyField2_content", SqlDbType.NVarChar,200)};
parameters[0].Value = model.ArticleID;
parameters[1].Value = model.Product_Id;
parameters[2].Value = model.cid;
parameters[3].Value = model.Title;
parameters[4].Value = model.AddDate;
parameters[5].Value = model.Elite;
parameters[6].Value = model.Content;
parameters[7].Value = model.smallpic;
parameters[8].Value = model.bigpic;
parameters[9].Value = model.grade;
parameters[10].Value = model.shichang;
parameters[11].Value = model.huiyuan;
parameters[12].Value = model.Ihot;
parameters[13].Value = model.Icomm;
parameters[14].Value = model.Itop;
parameters[15].Value = model.Memo;
parameters[16].Value = model.JiFen;
parameters[17].Value = model.DiyField1_name;
parameters[18].Value = model.DiyField2_name;
parameters[19].Value = model.DiyField1_Content;
parameters[20].Value = model.DiyField2_Content;
DbHelperSQL.ExecuteSql(strSql.ToString(), parameters);
}
{
CB_Article.Web.BaseClass.MessageBox.Show(this, "编辑案例失败!" + exc.Message + " " + exc.StackTrace);
}有异常抛出你都不把它抓住你还怎么查错?