我今天刚刚阅读了这篇文章,关于Microsoft如何决定System.Data.OrcaleClient从.NET 4.0库中删除命名空间.
我使用它作为我使用Oracle数据库的主要工具.
当我决定将我的应用程序从.NET 2.0升级到.NET 4.0时,在.NET 4.0框架中使用Oracle数据库会有哪些替代选项?
我安装了Oracle 64位客户端以与我的weblogic应用程序一起运行.我了解到pl-sql开发人员无法使用oracle 64位客户端,所以现在我的机器上安装了32位和64位客户端,而我的ORACLE_HOME变量指向64位客户端.
即使我在pl-sql开发人员版本8.0.4的Tools-> Preferences中指定了32位客户端,我也无法启动pl/sql developer.
我将我的oracle客户端更改为32位客户端然后我能够启动pl-sql开发人员,但我的应用程序不起作用.
有没有办法在将ORACLE_HOME指向64位oracle客户端的同时运行PL/SQL开发人员.我不确定在工具 - >首选项中明确指定ORACLE_HOME pl sql开发人员(对于用户/默认以及系统首选项)有任何影响,因为它从我相信的环境变量中选择了oracle home.
谢谢,Adithya.
请建议解决此问题的解决方案?给出命令时__CODE__发生的错误是
__CODE__..  
使用Oracle SQL Developer,我可以将/ -character放入用户名并将密码保留为空,然后我就连接了.我在数据库中创建了OP $ MYWINDOWSUSERNAME用户.
编辑:如果我检查操作系统身份验证复选框(清空和禁用用户名+密码),SQL Developer不起作用.此外,首选项 - >数据库 - >高级 - >使用Oracle客户端未经检查,因此我猜想SQL Developer与我的System.Data.OracleClient.OracleConnection问题有什么关系.
但是,当我尝试形成这样的连接字符串时:
string.Format("Data Source={0}; user id=/;password=;Integrated Security=yes", dbName);
我收到ORA-01017:用户名/密码无效:登录被拒绝
同
string.Format("Data Source={0}; user id=/;password=;Integrated Security=no", dbName);
我得到了ORA-01005.
同
string.Format("Data Source={0};Integrated Security=yes", dbName);
我收到ORA-01017:用户名/密码无效:登录被拒绝
同
string.Format("Data Source={0}; user id=/;", dbName);
我得到了ORA-01005
同
string.Format("Data Source={0};User Id=/;Integrated Security=yes;", dbName);
我得到了ORA-01017
当我指定用户名和密码时,我的程序中的OracleConnection和Oracle SQL Developer都工作.
编辑:这适用于
string.Format("Data Source={0};Integrated Security=yes", dbName);
当sqlnet.ora行
SQLNET.AUTHENTICATION_SERVICES= (NTS) 
改为
SQLNET.AUTHENTICATION_SERVICES= (NONE)
如果有人写简短的回答发生了什么以及为什么,我很乐意给予他/她赏金.
oracle ado.net connection-string oracleclient system.data.oracleclient
在我的测试中,我需要测试抛出OracleException时会发生什么(由于存储过程失败).我正在尝试设置Rhino Mocks
Expect.Call(....).Throw(new OracleException());
无论出于何种原因,OracleException似乎都没有公共构造函数.我该怎么做才能测试这个?
编辑:这正是我想要实例化的内容:
public sealed class OracleException : DbException {
  private OracleException(string message, int code) { ...}
}
我正在使用System.Data.OracleClient它按名称进行参数绑定,并验证CommandText和Parameters是否同步:
    public string CommandText { get; set; }
    public IEnumerable<OracleParameter> Parameters { get; set; }
    private void VerifyThatAllParametersAreBound()
    {
        var variableNames = Regex.Matches(CommandText, ":\\w+")
            .Cast<Match>().Select(m => m.Value).ToArray();
        var parameteterNames = Parameters.Select(p => p.ParameterName).ToArray();
        var unboundVariables = variableNames.Except(parameteterNames).ToArray();
        if (unboundVariables.Length > 0)
        {
            throw new Exception("Variable in CommandText missing parameter: "
                + string.Join(", ", unboundVariables) + ".");
        }
        var unboundParameters = parameteterNames.Except(variableNames).ToArray();
        if (unboundParameters.Length > 0)
        {
            throw new Exception("Parameter that is not used in CommandText: "
                + string.Join(", …我有一个测试环境,用于我的网站将使用的服务和生产环境.在我的测试环境中,我在服务器上安装了ODP.net.到目前为止,使用Oracle的服务似乎运行得非常流畅.我根本没有在该服务器上运行Oracle客户端.另一方面,我有一个服务器上有一个Oracle客户端,但似乎没有安装ODP.net(我正在进行双重检查,但这是SO问题的情况) .在生产服务器上,我得到以下异常:
Oracle.DataAccess.Client.OracleException: The provider is not compatible with the version of Oracle client
在两个服务器中,我在bin和lib文件夹中都有Oracle.DataAccess dll(不要认为我在lib文件夹中需要它,但为什么摇摇欲坠...我相信你能找到一个很好的理由,但是不是现在!!!).我的问题是我需要将ODP.net安装到生产服务器上吗?这是否解决了您遇到的任何问题?我看到一些SO帖子说这解决了他们的类似问题.你能推荐一个行动方案吗?谢谢!
我创建了一个与远程Oracle 10g数据库连接的桌面应用程序安装程序.当我在远程计算机上安装安装程序并运行我的应用程序时,我收到以下错误:
system.data.oracleclient requires oracle client software version 8.1.7 or greater
它在我的开发机器上运行良好.
首先,我的机器上有11和12个oracle客户端.但是当我尝试使用11g版本的oracle.dataacess.dll时.
我已经在regedit上删除了12c寄存器并停止了服务和machince.config相关.但该程序抛出"无法加载oraops12.dll ..".
oracle.dataacess找到dll配置的路径是什么?为什么它仍然试图加载oraops12而不是oraops11.
先感谢您.
我使用 alpine linux 作为基础镜像,我需要安装一个 oracle 客户端原生库。我相信你可以从这里下载:
https://www.oracle.com/technetwork/topics/linuxx86-64soft-092277.html
看起来我必须登录才能下载,有人知道如何在不登录的情况下下载客户端库的 zip 文件吗?
有谁知道如何在 bash 脚本或 dockerfile 中正确安装客户端库?
oracleclient ×10
oracle ×7
c# ×3
.net ×2
.net-4.0 ×1
ado.net ×1
alpine-linux ×1
docker ×1
dockerfile ×1
installation ×1
linux ×1
mocking ×1
odp.net ×1
ora-01008 ×1
oracle10g ×1
oracle11g ×1
sqlplus ×1