大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。
Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺
StringBuilder strSql=new StringBuilder();
strSql.Append(“insert into LB000(“);
strSql.Append(“LBID,CARRIER,COMPANY_NAME,DOM_ASTD_WGT,FRN_ASTD_WGT,DOM_CSTD_WT,FRN_CSTD_WT,DOM_ISTD_WT,FRN_ISTD_WT,DOM_CREWSTD_WGT,FRN_CREWSTD_WGT,ENTER,ENTER_TIME,CHECK_P,CHECK_TIME,ISDELETE)”);
strSql.Append(” values (“);
strSql.Append(“:LBID,:CARRIER,:COMPANY_NAME,:DOM_ASTD_WGT,:FRN_ASTD_WGT,:DOM_CSTD_WT,:FRN_CSTD_WT,:DOM_ISTD_WT,:FRN_ISTD_WT,:DOM_CREWSTD_WGT,:FRN_CREWSTD_WGT,:ENTER,:ENTER_TIME,:CHECK_P,:CHECK_TIME,:ISDELETE)”);
OracleParameter[] parameters = {
new OracleParameter(“:LBID”, OracleType.Number,4),
new OracleParameter(“:CARRIER”, OracleType.Char,2),
new OracleParameter(“:COMPANY_NAME”, OracleType.VarChar,50),
new OracleParameter(“:DOM_ASTD_WGT”, OracleType.Number,3),
new OracleParameter(“:FRN_ASTD_WGT”, OracleType.Number,3),
new OracleParameter(“:DOM_CSTD_WT”, OracleType.Number,3),
new OracleParameter(“:FRN_CSTD_WT”, OracleType.Number,3),
new OracleParameter(“:DOM_ISTD_WT”, OracleType.Number,3),
new OracleParameter(“:FRN_ISTD_WT”, OracleType.Number,3),
new OracleParameter(“:DOM_CREWSTD_WGT”, OracleType.Number,3),
new OracleParameter(“:FRN_CREWSTD_WGT”, OracleType.Number,3),
new OracleParameter(“:ENTER”, OracleType.VarChar,8),
new OracleParameter(“:ENTER_TIME”, OracleType.DateTime),
new OracleParameter(“:CHECK_P”, OracleType.VarChar,8),
new OracleParameter(“:CHECK_TIME”, OracleType.DateTime),
new OracleParameter(“:ISDELETE”, OracleType.Number,1)};
parameters[0].Value = GetGUID();
parameters[1].Value = model.CARRIER;
parameters[2].Value = model.COMPANY_NAME;
parameters[3].Value = model.DOM_ASTD_WGT;
parameters[4].Value = model.FRN_ASTD_WGT;
parameters[5].Value = model.DOM_CSTD_WT;
parameters[6].Value = model.FRN_CSTD_WT;
parameters[7].Value = model.DOM_ISTD_WT;
parameters[8].Value = model.FRN_ISTD_WT;
parameters[9].Value = model.DOM_CREWSTD_WGT;
parameters[10].Value = model.FRN_CREWSTD_WGT;
parameters[11].Value = model.ENTER;
parameters[12].Value = DateTime.Now;
parameters[13].Value = model.CHECK_P;
parameters[14].Value = DateTime.Now;
parameters[15].Value = model.ISDELETE;
int rows=DbHelperOra.ExecuteSql(strSql.ToString(),parameters);
之后添加数据,总是报“ORA-01008: 并非所有变量都已绑定”的错误。经过仔细检查,和网上搜索,
新增如下代码就可解决
//新增以下代码foreach (OracleParameter parm in parms)
{
if (parm.Value == null)
parm.Value = DBNull.Value;
}
总结:
在对象引用类型的属性没有赋值的情况下,值为 null将 null 赋予参数对象的 value 属性,相当于没有赋值,所以 Oracle 报 ORA-01008: 并非所有变量都已绑定对于准备赋予数据库 null 的参数应该明确赋予 DBNull
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/196577.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...