我使用的功能的功能:調用用戶定義的類型的參數(甲骨文ODP.NET)
fu_has_permissions(udt_person('johny','superman'),'fly_away')
udt_person是一個用戶定義的類型:
create or replace TYPE udt_person AS OBJECT
(name VARCHAR2(3),
id VARCHAR2(18));
我想使用綁定變量whan調用此函數,但我不知道我在做什麼錯誤...這裏是代碼:
......
OracleParameter udtPersParam = new OracleParameter();
udtPersParam.ParameterName = ":pUdtPers";
udtPersParam.UdtTypeName = "UDT_PERS";
string[] paramValues = { name, id };
udtPersParam.Value = paramValues;
OracleParameter pAction = new OracleParameter(":pAction", OracleDbType.Varchar2, 255);
pAction.Value = action;
parameters.Add(udtPartParam);
parameters.Add(pAction);
try
{
_loginOdr = DBFacade.ExecuteSelectQuery("select fu_has_permissions(:pUdtPart, :pAction) from dual", parameters);
}
謝謝!
你會得到什麼錯誤?它是否是'UdtTypeName'與Oracle類型名稱不匹配的錯字? – 2010-11-12 08:09:14
「值不在預期的範圍內。」,在行udtPersParam.Value = paramValues; – maephisto 2010-11-12 08:47:45