0
我在使用參數化的oracle命令時遇到了問題。該命令似乎識別所有字符串參數(:Id,:CreateUser),但不識別字符參數(:Active)。參數化的oracle命令c#
string qry = @"Insert into GROUP_LOGIN
(
GROUP_ID,
CREATED_ON,
ACTIVE_FLAG,
CREATED_USER
)
values
(
:Id,
SYSDATE,
:Active,
:CreateUser
)";
OracleCommand cmd = dal.GetOracleCommand();
if (cmd != null)
{
cmd.CommandText = qry;
OracleParameter op= new OracleParameter("Active",OracleDbType.Char);
op.Value = active;
//cmd.Parameters.Add(op);
OracleParameter[] myParams = new OracleParameter[]
{
new OracleParameter("Id", this.GrpID),
new OracleParameter("Description", this.Description),
new OracleParameter("CreateUser", this.Create_User),
new OracleParameter("Remarks", this.Remarks),
op
};
for (int i = 0; i < myParams.Length; i++)
{
cmd.Parameters.Add(myParams[i]);
}
//...
}
我試圖這樣做的不同的方法,但每次我使用這兩種類型的參數char參數,沒有得到認可。當角色參數只考慮它工作正常,但沒有別的提示錯誤
ORA-01400: cannot insert NULL into ("User"."GROUP_LOGIN"."ACTIVE_FLAG")
你有沒有嘗試將'active'投射到一個字符串並傳遞給它? – 2016-05-19 12:28:52