0

Oracle.ManagedDataAccess.Client を SYSDBA として使用して、C# デスクトップ アプリケーションから Windows 7 64x バージョンの ORACLE 10g データベースに接続しようとしています。

構成ファイルからの接続文字列は次のとおりです。

<add name="default" connectionString="User Id=scott;Password=tiger;DBA Privilege=SYSDBA;Data Source=(DESCRIPTION =(ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = sherif-PC)(PORT = 1521)))(CONNECT_DATA =(SERVER = DEDICATED)(SERVICE_NAME =orcl2)));" providerName="Oracle.ManagedDataAccess.Client"/>

コードは次のとおりです。

 ConnectionStringSettings ConnectString = ConfigurationManager.ConnectionStrings["default"];
            _dbFact = DbProviderFactories.GetFactory(ConnectString.ProviderName);
            _con = _dbFact.CreateConnection();
            _con.ConnectionString = ConnectString.ConnectionString;
            using (_con)
            {
                _con.Open();
                using (_cmd = _con.CreateCommand())
                {
                    _cmd.CommandText = "select * from EMP;";
                    using (IDataReader reader = _cmd.ExecuteReader())
                    {
                        res = reader.GetString(1);
                    }
                }
                _con.Close();

                MessageBox.Show(res);
            }

さまざまな種類のデータベースの一般的なソリューションである必要があるため、DbProviderFactory を使用する必要があります

4

0 に答える 0