zoukankan      html  css  js  c++  java
  • Oracle.ManagedDataAccess.Client 查询datatable 报 Index was outside the bounds of the array

    问题:

    在.net core 连接oralce 查询数据返回 DataTable 偶尔报 Index was outside the bounds of the array。

    最后发现是修改视图后添加字段,必然报这个错误。

    解决方案:

    1、在程序里面不要写 select * from aaa; 不要写 *,写固定字段。

    2、修改数据库视图或表后,重启你的应用程序池。

    3、修改连接字符串(这种方式对影响性能可能有一定影响)

    Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=127.0.0.1)(PORT=1522))(CONNECT_DATA=(SERVER = DEDICATED)(SERVICE_NAME=dev)));User Id=1;Password=1;Self Tuning=false;STATEMENT CACHE SIZE=0;METADATA POOLING=false;

    这3个配置:

    Self Tuning=false;STATEMENT CACHE SIZE=0;METADATA POOLING=false;

    建议在程序不要写"*"。 

    附连接字符串说明:

    (文字描述 是自动翻译的可能有些不准)。

    连接字符串属性描述默认值

    Connection Lifetime

    连接的最长生存时间(以秒为单位)。

    0

    Connection Timeout

    等待池中的免费连接的最长时间(以秒为单位)。

    15

    Context Connection

    如果设置为,则返回隐式数据库连接true

    仅在.NET存储过程中受支持

    false

    Data Source

    Oracle Net服务名称,连接描述符或一个简单的连接命名,用于标识要连接的数据库。

    空字符串

    DBA Privilege

    管理特权:SYSDBASYSOPER

    空字符串

    Decr Pool Size

    未使用过多的已建立连接时关闭的连接数。

    1

    Enlist

    在COM +事务或的上下文中控制连接的登记行为和功能System.Transactions

    true

    HA Events

    使ODP.NET连接池能够在Oracle RAC服务,服务成员或节点关闭时主动从池中删除连接。与RAC,Data Guard或单个数据库实例一起使用。

    false

    Load Balancing

    使ODP.NET连接池能够基于负载平衡咨询和服务目标在Oracle RAC实例之间平衡工作请求。

    false

    Incr Pool Size

    使用池中的所有连接时要创建的新连接数。

    5

    Max Pool Size

    池中的最大连接数。

    100

    Metadata Pooling

    缓存元数据信息。

    True

    Min Pool Size

    池中的最小连接数。

    1

    Password

    由指定的用户密码User Id

    空字符串

    Persist Security Info

    在连接字符串中检索密码。

    false

    Pooling

    连接池。

    true

    Promotable Transaction

    指示事务在整个生命周期内是本地事务还是分布式事务。

    可推广

    Proxy User Id

    代理用户的用户名。

    空字符串

    Proxy Password

    代理用户的密码。

    空字符串

    Statement Cache Purge

    连接返回池时清除语句缓存。

    false

    Statement Cache Size

    启用了语句缓存和缓存大小,即可以缓存的最大语句数。

    10

    User Id

    Oracle用户名。

    空字符串

    Validate Connection

    验证来自池的连接。

    false

    Self Tuning

    指定是否为ODP.NET应用程序启用自调整。false:禁用自调整。用于Self Tuning连接字符串属性。true:启用了自调整 默认

    true

    参考官网:

     https://docs.oracle.com/cd/B28359_01/win.111/b28375/featConnecting.htm

  • 相关阅读:
    xcode 查看stastic
    erlang 游戏服务器开发
    同一世界服务器架构--Erlang游戏服务器
    理解Erlang/OTP
    使用SecureCRT连接AWS的EC2
    redis单主机多实例
    Redis命令总结
    [redis] redis配置文件redis.conf的详细说明
    [转至云风的博客]开发笔记 (2) :redis 数据库结构设计
    Redis 集群方案
  • 原文地址:https://www.cnblogs.com/piaoxuewuming/p/13809625.html
Copyright © 2011-2022 走看看