语句很简单,就一个插入语句啊:insert into TB_PROOFIMAGE(PROOFID,USERID,PROOF_TYPE,PROOF_USE,PROOF_IMAGE) values ('19527e5d-e9cb-4ce2-bd1a-9f03aca8096f','pl','介绍信','2',System.Byte[])我的PROOF_IMAGE是BLOB类型,保存图片byte[]数组的啊。语句末尾一直报错:缺失逗号!!!!请高手指点指点啊。这是为什么呢??????????
调试欢乐多
StringBuilder strSql=new StringBuilder();
StringBuilder strSql1=new StringBuilder();
StringBuilder strSql2=new StringBuilder();
if (model.PROOFID != null)
{
strSql1.Append("PROOFID,");
strSql2.Append("'"+model.PROOFID+"',");
}
if (model.USERID != null)
{
strSql1.Append("USERID,");
strSql2.Append("'"+model.USERID+"',");
}
if (model.PROOF_TYPE != null)
{
strSql1.Append("PROOF_TYPE,");
strSql2.Append("'"+model.PROOF_TYPE+"',");
}
if (model.PROOF_USE != null)
{
strSql1.Append("PROOF_USE,");
strSql2.Append("'"+model.PROOF_USE+"',");
}
if (model.PROOF_IMAGE != null)
{
strSql1.Append("PROOF_IMAGE,");
strSql2.Append(""+model.PROOF_IMAGE+",");
}
strSql.Append("insert into TB_PROOFIMAGE(");
strSql.Append(strSql1.ToString().Remove(strSql1.Length - 1));
strSql.Append(")");
strSql.Append(" values (");
strSql.Append(strSql2.ToString().Remove(strSql2.Length - 1));
strSql.Append(")");
DbHelperOra.ExecuteSql(strSql.ToString());
{
strSql1.Append("PROOF_IMAGE,");
strSql2.Append("@PROOF_IMAGE,");
}
DbHelperOra.ExecuteSql(strSql.ToString()); 这个方法应该有重载..OracleParameter[] _Parameter = new OracleParameter[1];
_Parameter[0] = new System.Data.OracleClient.OracleParameter("@PROOF_IMAGE", System.Data.OracleClient.OracleType.Blob);
_Parameter[0].Value = model.PROOF_IMAGE;传递 _Parameter到 ExecuteSql方法里..如果没有你的重构造一个方法在 OracleCommand.Parameters 里添加 _Parameter参数...