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
在尝试从数据库获取数据时我得到了。异常被捕获
string myField = (string)reader["MYFIELD"];
为了理解读者,我查找了有关 OracleDataReader 和命令的信息,但是......它是否将获取的数据存储在数组或任何其他序列中?为什么我会得到IndexOutOfRangeException
以及为什么读者需要[]
括号中的参数?