/// <summary> ///returns the value of the simulated self-increment field for the corresponding table/// </summary> /// <param name= "tablename" >Table name</param> /// <returns>table's simulated self-increment field value</returns> Public decimalGetpknum (stringtablename) { Switch(sqltype) { Case "MSSQL2008": Parameters=NewList<dbparameter>(); Parameters. ADD (NewSqlParameter ("@table_name", SqlDbType.VarChar, -)); Parameters. ADD (NewSqlParameter ("@key_value", Sqldbtype.decimal,9)); parameters[0]. Value =TableName; parameters[1]. Direction =ParameterDirection.Output; Break; Case "Oracle": Parameters=NewList<dbparameter>(); Parameters. ADD (NewOracleParameter (": Tb_name", ORACLE.MANAGEDDATAACCESS.CLIENT.ORACLEDBTYPE.VARCHAR2, -)); Parameters. ADD (NewOracleParameter (": Key_value", Oracle.ManagedDataAccess.Client.OracleDbType.Decimal)); parameters[0]. Value =TableName; parameters[0]. Direction =ParameterDirection.Input; parameters[1]. Direction =ParameterDirection.Output; Break; default: Break; } idbhelper DBHelper=Dbfactory.createdbhleper (); returnDBHelper. Runprocedure (Utility.db.pubconstant.connectionstring,parameters,"Up_get_table_key"); }
Idbhelper dbhelper = dbfactory.createdbhleper (); a dbhelp file was created in the background, if it was an Oracle database DBHelper Oraclehelper file
This Oracle stored procedure has two parameters, Key_value is the return parameter out
Utility.DB.PubConstant.ConnectionString is a database connection string
"Up_get_table_key" is the stored procedure name
C # Get the return value of an Oracle stored procedure 1