db2+.net开发问题

db2+.net开发问题


/// <summary>
/// 增加一条数据
/// </summary>
public void Add(Model.CenterToDeptApplication model)
{
StringBuilder strSql=new StringBuilder();
strSql.Append("insert into ADMINISTRATOR.CENTERTODEPT_APPLICATION(";
strSql.Append("UUID,APP_NO,DEPT_NO,PROJ_NAME,APP_NAME,PROM_TIME,UNIT_CODE,UNIT_NAME,ACC_NAME,ACC_TIME,END_TIME,COMP_TIME,END_STATUS,GET_NAME,GET_TIME,DEPT_APP_NO,COMMENTS,SWAP_TIME,STATUS,INVEST,FEE,SWAP_STATUS)";
strSql.Append(" values (";
strSql.Append(":UUID,:APP_NO,EPT_NO,:PROJ_NAME,:APP_NAME,ATA_XML,@PROM_TIME,:UNIT_CODE,:UNIT_NAME,:ACC_NAME,:ACC_TIME,:END_TIME,:COMP_TIME,:END_STATUS,:GET_NAME,:GET_TIME,EPT_APP_NO,:COMMENTS,:SWAP_TIME,:STATUS,:INVEST,:FEE,:SWAP_STATUS)";
OleDbParameter[] parameters = {
new OleDbParameter(":UUID", OleDbType.VarChar,50),
new OleDbParameter(":APP_NO", OleDbType.VarChar,50),
new OleDbParameter("EPT_NO", OleDbType.VarChar,50),
new OleDbParameter(":PROJ_NAME", OleDbType.VarChar,200),
new OleDbParameter(":APP_NAME", OleDbType.VarChar,100),
new OleDbParameter("ATA_XML", OleDbType.Binary,16),
new OleDbParameter(":PROM_TIME", OleDbType.VarChar,20),
new OleDbParameter(":UNIT_CODE", OleDbType.VarChar,50),
new OleDbParameter(":UNIT_NAME", OleDbType.VarChar,200),
new OleDbParameter(":ACC_NAME", OleDbType.VarChar,50),
new OleDbParameter(":ACC_TIME", OleDbType.VarChar,20),
new OleDbParameter(":END_TIME", OleDbType.VarChar,20),
new OleDbParameter(":COMP_TIME", OleDbType.VarChar,20),
new OleDbParameter(":END_STATUS", OleDbType.VarChar,50),
new OleDbParameter(":GET_NAME", OleDbType.VarChar,50),
new OleDbParameter(":GET_TIME", OleDbType.VarChar,20),
new OleDbParameter("EPT_APP_NO", OleDbType.VarChar,50),
new OleDbParameter(":COMMENTS", OleDbType.VarChar,500),
new OleDbParameter(":SWAP_TIME", OleDbType.VarChar,20),
new OleDbParameter(":STATUS", OleDbType.VarChar,50),
new OleDbParameter(":INVEST", OleDbType.VarChar,50),
new OleDbParameter(":FEE", OleDbType.VarChar,500),
new OleDbParameter(":SWAP_STATUS", OleDbType.VarChar,10)};
parameters[0].Value = model.UUID;
parameters[1].Value = model.AppNo;
parameters[2].Value = model.DeptNo;
parameters[3].Value = model.ProjName;
parameters[4].Value = model.AppName;
parameters[5].Value = model.DataXml;
parameters[6].Value = model.PromTime;
parameters[7].Value = model.UnitCode;
parameters[8].Value = model.UnitName;
parameters[9].Value = model.AccName;
parameters[10].Value = model.AccTime;
parameters[11].Value = model.EndTime;
parameters[12].Value = model.CompTime;
parameters[13].Value = model.EndStatus;
parameters[14].Value = model.GetName;
parameters[15].Value = model.GetTime;
parameters[16].Value = model.DeptAppNo;
parameters[17].Value = model.Comments;
parameters[18].Value = model.SwapTime;
parameters[19].Value = model.Status;
parameters[20].Value = model.Invest;
parameters[21].Value = model.Fee;
parameters[22].Value = model.SwapStatus;

OleDbHelper.ExecuteSql(strSql.ToString(),parameters);
}

提示错误:

[DB2/NT] SQL0312N 在动态 SQL 语句、视图定义或触发器定义中使用主变量 "UUID"。 SQLSTATE=42618
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。

异常详细信息: System.Exception: [DB2/NT] SQL0312N 在动态 SQL 语句、视图定义或触发器定义中使用主变量 "UUID"。 SQLSTATE=42618

源错误:


行 470: catch(System.Data.OleDb.OleDbException E)
行 471: {
行 472: throw new Exception(E.Message);
行 473: }
行 474: }


如何解决?
...全文
160 2 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
wuwen624 2009-02-04
  • 打赏
  • 举报
回复
我觉得可以在传入对象以及给数组赋值的时候设置一下断点,然后查看对象和数组赋值的情况,来确定问题出现的原因
talen_lu 2009-01-31
  • 打赏
  • 举报
回复
不要用oledb
用ibm.data.db2

5,891

社区成员

发帖
与我相关
我的任务
社区描述
IBM DB2 是美国IBM公司开发的一套关系型数据库管理系统,它主要的运行环境为UNIX(包括IBM自家的AIX)、Linux、IBM i(旧称OS/400)、z/OS,以及Windows服务器版本
社区管理员
  • DB2
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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