この方法でストアド プロシージャで XML を作成しようとしています。
PROCEDURE DeviceSearched(
xml_out OUT XMLTYPE
)
IS
BEGIN
SELECT
XMLELEMENT("Values",
XMLFOREST(de_brand)
)
INTO xml_out
FROM
tbldevice de
;
END DeviceSearched;
xml_out
そして、私はこのようにC#で読み込もうとしています:
...
OracleCommand command = new OracleCommand(name, conn);
command.CommandType = CommandType.StoredProcedure;
command.BindByName = true;
...
command.Parameters.Add(new OracleParameter("xml_out", OracleDbType.XmlType, ParameterDirection.Output));
このアプローチでは、次の 2 つの問題があります。
- Oracle 例外: 「ORA-01422: 正確なフェッチが、要求された行数を超えて返されます」
- クエリを変更して 1 行を取得する場合、手順は問題ありません (と思います) が、c# では結果がありません。
私は何を間違っていますか?
前もって感謝します