我试图通过使用下面的代码从数据库中获取数据…..
如果表中没有数据,它将始终进入
这个说法
我使用mysql.net连接器获取数据,我正在做winforms应用程序
使用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); }
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; }
即使没有数据,流程也会流向此行
table = ds.Tables[0];
我怎么能减少这个……
任何人都会对此有所帮助….