sql >> データベース >  >> RDS >> Oracle

C#でPL-SQLブロックによって返されるdbms.output値を取得する方法

    次の方法を使用しています:

        private string GetDbmsOutputLine()
        {
            OracleCommand command = new OracleCommand
            {
                Connection = <connection>,
                CommandText = "begin dbms_output.get_line(:line, :status); end;",
                CommandType = CommandType.Text
            };
    
            OracleParameter lineParameter = new OracleParameter("line",  
                OracleType.VarChar);
            lineParameter.Size = 32000;
            lineParameter.Direction = ParameterDirection.Output;
            command.Parameters.Add(lineParameter);
    
            OracleParameter statusParameter = new OracleParameter("status",  
                OracleType.Int32);
            statusParameter.Direction = ParameterDirection.Output;
            command.Parameters.Add(statusParameter);
    
            command.ExecuteNonQuery();
    
            if (command.Parameters["line"].Value is DBNull)
                return null;
    
            string line = command.Parameters["line"].Value as string;
    
            return line;
        }
    

    System.Data.OracleClientでdbms_output.get_linesを呼び出す際に問題があるため、マルチストリング値を取得するために数回呼び出します。




    1. MySQLでパーセンテージとして数値をフォーマットする

    2. エンティティ属性値モデル-パフォーマンスの代替?

    3. MySQLに挿入された複数の行のIDを取得するにはどうすればよいですか?

    4. Ubuntu12.04でphpMyAdminを使用してMySQLをインストールする方法