sql >> Databasteknik >  >> RDS >> Oracle

Dapper &Oracle Clob typ

Jag hittade denna vijaysg / OracleDynamicParameters.cs

Den skapar OracleDynamicParameters klass implementerar IDynamicParameters gränssnitt.

Här är hur man använder det

Exempel:

PROCEDURE GetUserDetailsForPIDM (i_id    IN   NUMBER,
                o_user           OUT SYS_REFCURSOR,
                o_roles          OUT SYS_REFCURSOR);

och hur man kallar det med dapper

public static User GetUserDetailsByID( int ID ) {
    User u = null;
    using ( OracleConnection cnn = new OracleConnection( ConnectionString ) ) {
        cnn.Open( );
        var p = new OracleDynamicParameters( );
        p.Add( "i_id", ID );
        p.Add( "o_user", dbType:OracleDbType.RefCursor, direction: ParameterDirection.Output );
        p.Add( "o_roles", dbType: OracleDbType.RefCursor, direction: ParameterDirection.Output );

        using ( var multi = cnn.QueryMultiple( "PKG_USERS.GetUserDetailsForID", param: p, commandType: CommandType.StoredProcedure ) ) {
            u = multi.Read<User>( ).Single( );
            u.Roles = multi.Read<UserRole>.ToList( );
        }
    }
    return u;
}

För typen Clob, specificera bara OracleDbType.Clob när du lägger till parameter.



  1. Hur tillåter jag att en rullgardinsparameter i SSRS har ett standardvärde på -- Alla -- ?

  2. PDO lastInsertId fungerar inte på transaktioner?

  3. Användare online offline status - offline status problem

  4. Postgres:ger åtkomst till en roll/användare för framtida tabeller skapade av en annan roll/användare