程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Oracle數據庫 >> Oracle數據庫基礎 >> Parameter : No size set for variable length data type: St

Parameter : No size set for variable length data type: St

編輯:Oracle數據庫基礎
  錯誤提示:Parameter 'l_ReStatus': No size set for variable length data type: String 背景: cmd.Parameters.Add("l_ReStatus", OracleType.VarChar).Direction = ParameterDirection.Output;            執行完cmd.ExecuteNonQuery();後直接進入catch語句 public bool RunProcZX(string User_Id,out string ReStatus)         {             OracleConnection conn = new OracleConnection(connStr);             conn.Open();             OracleCommand cmd = new OracleCommand("存儲過程名", conn);             cmd.CommandType = CommandType.StoredProcedure;             //定義傳入參數的類型。類型為OracleType.VarChar             cmd.Parameters.Add("l_User_Id", OracleType.VarChar).Direction = ParameterDirection.Input;             //傳值             cmd.Parameters["l_User_Id"].Value = User_Id;             //傳出參數,類似於c#中的out             cmd.Parameters.Add("l_ReStatus", OracleType.VarChar).Direction = ParameterDirection.Output;                      try             {                 cmd.ExecuteNonQuery();                 ReStatus = cmd.Parameters["l_ReStatus"].Value.ToString();                             return true;             }             catch             {                 return false;             }             finally             {                 conn.Close();             }         } 解決辦法:cmd.Parameters.Add("l_ReStatus", OracleType.VarChar, 20).Direction = ParameterDirection.Output; Parameter   : No size set for variable length data type: String - Complaint Free Wolrd - Complaint Free Wolrd 

小注:

Parameter的參數設置長度(size屬性)

             實例化Parameter時,如果是字符型,一定要指定size屬性(請使用截圖顯示的方法)  
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved