/// <summary> /// таблица как список строк /// </summary> /// <param name="query">запрос на получение таблицы</param> /// <returns>список строк талицы</returns> public static List <String> GetTableContents(string query, LevelOffTableDelegate _lofDelegate) { List <String> res = new List <String>(); Cn.Open(); try { OleDbCommand cmd = new OleDbCommand(); cmd.Connection = Cn; cmd.CommandText = query; OleDbDataReader rd; try { rd = cmd.ExecuteReader(); } catch (Exception) { Cn.Close(); return(new List <string>() { "No such table" }); } if (rd.HasRows) { string str = ""; List <List <string> > tableStr = new List <List <string> >(); List <string> lst = new List <string>(); int columns = rd.FieldCount; for (int i = 0; i < columns; i++) { lst.Add(rd.GetName(i)); } tableStr.Add(lst); while (rd.Read()) { List <string> lst1 = new List <string>(); for (int i = 0; i < columns; i++) { lst1.Add(rd[i].ToString()); } tableStr.Add(lst1); } res = _lofDelegate(tableStr, columns); } Cn.Close(); return(res); } catch { Cn.Close(); return(new List <string>()); } }
/// <summary> /// queries without params /// </summary> /// <param name="showFun"></param> /// <param name="qFun"> /// </param> /// <param name="n"> /// 0 - 6QL_Старосты /// 1 - УспеваемостьПИН-34 /// 2 - SQL_студентыИИхКафедры</param> /// <param name="_lofDelegate"></param> /// <param name="textBox"></param> public static void QueriesWithoutParams(fun2 showFun, fun1 qFun, int n, LevelOffTableDelegate _lofDelegate, params string[] textBox) { try { switch (n) { case 0: showFun(Database.GetTableContents(Database.SelectQuery("6QL_Старосты"), _lofDelegate)); break; case 1: showFun(Database.GetTableContents(Database.SelectQuery("УспеваемостьПИН-34"), _lofDelegate)); break; case 2: showFun(Database.GetTableContents(Database.SelectQuery("SQL_студентыИИхКафедры"), _lofDelegate)); break; } } catch (Exception ex) { qFun(ex.Message); } }