que acaba de instalar una base de datos Oracle expreso y estoy tratando de leer algunos datos de una tabla que he puesto ahí:problemas de lectura de Oracle
using (OracleConnection conn = new OracleConnection("Data Source=localhost:1521/xe;Persist Security Info=True;User ID=SYSTEM;Password=SYSTEMPASSWORD"))
{
OracleCommand command = new OracleCommand("SELECT * FROM Persons WHERE Firstname = 'John'", conn);
conn.Open();
OracleDataReader reader = command.ExecuteReader();
try
{
while (reader.Read())
{
string strResult = reader.GetString(0);
}
}
catch (OracleException oex)
{
MessageBox.Show(oex.Message, "Oracle error");
}
catch (Exception ex)
{
MessageBox.Show(ex.Message, "Error");
}
finally
{
reader.Close();
}
}
Por while (reader.Read())
que sólo se cierra ya que el lector hace no contiene ningún dato. ¿Qué está mal? Connectionstring
? He ejecutado el mismo SELECT
en la herramienta commandprompt que está instalada con Oracle Express y funciona bien.
¿Estás seguro de que la conexión está abierta correctamente y ExecuteReader funciona sin excepciones? ¿Puso un punto de corte y un valor comprobado del objeto lector después de la asignación y antes de ingresar al ciclo while? –
¿Esta selección devuelve cualquier fila si la ejecutará en sqlplus o en cualquier otra herramienta? – igofed
Pruebe la selección sin la cláusula WHERE – Adauto