static public void ConnectAndQuery()
{
string connectionString = GetConnectionString();
using (OracleConnection conn = new OracleConnection())
{
conn.ConnectionString = connectionString;
conn.Open();
Console.WriteLine("State: " + conn.State);
Console.WriteLine("Connection String: " + conn.ConnectionString);
OracleCommand command = conn.CreateCommand();
string sql = "SELECT * FROM users";
command.CommandText = sql;
OracleDataReader reader = command.ExecuteReader();
while (reader.Read())
{
string myField = (string)reader["MYFIELD"];
Console.WriteLine(myField);
}
}
}
接続は確立され、開いていますがIndexOutOfRangeException
、DB からデータを取得しようとすると取得されます。例外がキャッチされる
string myField = (string)reader["MYFIELD"];
リーダーを理解するために OracleDataReader とコマンドに関する情報を探しましたが、取得したデータは配列またはその他の順序で保存されますか? なぜ私は を受け取っているのですか?IndexOutOfRangeException
また、読者が[]
括弧内に引数を必要とするのはなぜですか?