Próbuję uzyskać dane z bazy danych za pomocą poniższego kodu .....Problem pobierania danych z bazy danych
jeśli nie ma żadnych danych w tabeli będzie zawsze idzie do to stwierdzenie
Używam złącze mysql.net uzyskania danych i robię winForms aplikacji użyciu C#
public DataTable sales(DateTime startdate, DateTime enddate)
{
const string sql = @"SELECT memberAccTran_Source as Category, sum(memberAccTran_Value) as Value
FROM memberacctrans
WHERE memberAccTran_DateTime BETWEEN @startdate AND @enddate
GROUP BY memberAccTran_Source";
return sqlexecution(startdate, enddate, sql);
}
i poniżej kod jest na powrót sqlexceution ... funkcji ..
private static DataTable sqlexecution(DateTime startdate, DateTime enddate, string sql)
{
var table = new DataTable();
using (var conn = new MySql.Data.MySqlClient.MySqlConnection(connectionstring))
{
conn.Open();
var cmd = new MySql.Data.MySqlClient.MySqlCommand(sql, conn);
var ds = new DataSet();
var parameter = new MySql.Data.MySqlClient.MySqlParameter("@startdate", MySql.Data.MySqlClient.MySqlDbType.DateTime);
parameter.Direction = ParameterDirection.Input;
parameter.Value = startdate.ToString(dateformat);
cmd.Parameters.Add(parameter);
var parameter2 = new MySql.Data.MySqlClient.MySqlParameter("@enddate", MySql.Data.MySqlClient.MySqlDbType.DateTime);
parameter2.Direction = ParameterDirection.Input;
parameter2.Value = enddate.ToString(dateformat);
cmd.Parameters.Add(parameter2);
var da = new MySql.Data.MySqlClient.MySqlDataAdapter(cmd);
da.Fill(ds);
try
{
table = ds.Tables[0];
}
catch
{
table = null;
}
}
return table;
}
nawet, jeśli nie ma danych wola strumień procesowy przejdzie do tej linii
Tabela = ds.Tables [0];
jak mogę zmniejszyć to .....
by ktoś pls pomoc w tej sprawie ....
dlaczego ru dając dół głos ... –
Czy bierzesz za pomocą ORM np Linq do encji SQL lub EF? – James
nie .. muszę użyć tego .... –