1

リモートの IBM AIX サーバーに Oracle 9i DB をインストールしています。C# アプリ (.Net) を使用して接続したい 現在、自分のマシンから SQL Developer と SQLPlus を使用して接続できます。

しかし、System.Data.OracleClient を使用して、Visual Studio アプリから接続しようとすると。

    private static string GetConnectionString()
    {
        return "Data Source=<server address>;User ID=<username>;Password=<password>;";
    }

    // This will open the connection and query the database
    private static void ConnectAndQuery()
    {
        string connectionString = GetConnectionString();
        using (OracleConnection connection = new OracleConnection())
        {
            try
            {
                connection.ConnectionString = connectionString;
                connection.Open();
                Console.WriteLine("State: {0}", connection.State);
                Console.WriteLine("ConnectionString: {0}",
                                  connection.ConnectionString);

                OracleCommand command = connection.CreateCommand();
                string sql = "SELECT * FROM demo";
                command.CommandText = sql;

                OracleDataReader reader = command.ExecuteReader();
                while (reader.Read())
                {
                    string myField = (string)reader["f1"];
                    Console.WriteLine(myField);
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
                connection.Close();
            }
            finally
            {
                connection.Close();
            }
        }
    }

次のエラーが表示されます。

ORA-12705 無効または不明なNLSパラメータ値が指定されました

NLS のレジストリ値を確認しましたが、既に AMERICAN_AMERICA.WE8MSWIN1252 に設定されています。

これを処理する方法がわからない。提案してください

4

1 に答える 1

0

この問題の考えられる原因については、ここ dba-oracle.com で説明されています。

于 2010-06-28T16:28:25.583 に答える