我是Oracle新手,試圖從Oracle數據庫中獲取數據。以下是我的代碼。控制檯中沒有顯示錯誤。但是在代碼中不會進入while循環。因爲我對這個人不熟悉,請幫我解決這個問題?ODP.NET無法從數據讀取器讀取數據
public void Login()
{
using (OracleConnection connection = new OracleConnection())
{
connection.ConnectionString = ConnectionString;
try
{
LogManager.Info("inside login");
connection.Open();
OracleCommand cmd = connection.CreateCommand();
cmd.Connection = connection;
string sql = "select ID from APRV_EMPLOYEE where USERNAME = :username ";
LogManager.Info("sql" + sql);
cmd.CommandType = CommandType.Text;
cmd.CommandText = sql;
cmd.BindByName = true;
cmd.Parameters.Add(":username", OracleDbType.NVarchar2).Value = "admin";
IDataReader reader = cmd.ExecuteReader();
LogManager.Info("Inside DatabaseManager::hasrows");
while (reader.Read())
{
LogManager.Info("Inside DatabaseManager::read" + reader.GetString(1));
LogManager.Info("Inside DatabaseManager::read2" + reader.GetString(reader.GetOrdinal("ID")));
}
reader.Dispose();
cmd.Dispose();
}
catch (Exception ex)
{
LogManager.Error("Inside DatabaseManager::Login " + ex.Message);
}
}
}
請幫我提前
你可以試試'cmd.Parameters.Add( 「用戶名」 ,OracleDbType.NVarchar2).Value =「admin」;',我永遠不會記得':'是否應該在那裏。 –