/// <summary> /// Truncates a table in the database. /// </summary> /// <param name="args">The commandline arguments</param> /// <returns>Whether clearing of the table in the database went well.</returns> public bool Clear(string[] args) { if (args.Length > 1 && args[1] != null && args[1] != "" && (args[1] == "person" || args[1] == "log")) { var queryBuilder = new QueryBuilder(); queryBuilder.SetType("truncate"); queryBuilder.SetTable(args[1]); var test = new QueryBuilder(); test.SetType("truncate"); test.SetTable(args[1]); Console.WriteLine(test.Assemble()); queryBuilder.ExecuteNoneQuery(); return true; } return false; }
/// <summary> /// Returns the available tables at a polling venue /// for a client application to choose between. /// </summary> /// <param name="clientName">The id of the client.</param> /// <returns>The available tables for the client to choose as a string array.</returns> public string[] ValidTableRequestHandler(string clientName) { var queryBuilder = new QueryBuilder(); queryBuilder.SetType("select"); queryBuilder.SetTable("Person"); queryBuilder.SetColumns(new [] { "polling_table" } ); queryBuilder.SetGroupBy("polling_table"); var results = queryBuilder.ExecuteQuery(); var tables = new string [results.Count]; var i = 0; foreach (var result in results) { tables[i++] = (string) ((Hashtable) result)["polling_table"]; } return tables; }