将数组从.Net应用程序传递到Oracle存储过程

我需要将一个数组从C#.net应用程序传递给oracle存储过程。 任何人都可以让我知道如何去做吗? 另外,在将输入参数传递给存储过程时,我在C#中使用哪种OracleType类型?

仅供参考,我在C#app中使用System.Data.OracleClient。

谢谢。

Jimmy,System.Data.OracleClient不支持数组。
http://social.msdn.microsoft.com/Forums/en-US/adodotnetentityframework/thread/57a59fba-09e2-46cb-a072-6706b3ec5131

根据您的需要,您需要使用ODP.net客户端通过嵌套表类型(通过UDT或assoc。数组)实现此function。 这可能是一个很好的方向,尤其是。 因为.net 4.0已弃用System.Data.OracleClient 。

但是如果你坚持使用System.Data.OracleClient并且你真的只是想在列表中做一个变量,你可以通过传入一个字符串并遵循以下一些建议来做到这一点: http : //asktom.oracle。 ?COM / PLS / asktom / F p = 100:11:0 :::: P11_QUESTION_ID:210612357425

希望这可以帮助

您应该使用DB定义的嵌套表类型将数组传递给PL / SQL。 看看这个很好的教程 ,它可能会对你有所帮助。