public DataTable FindEntriesByDoor(string door) // Sök de sensaste loggar från en viss dörr, returnerera en DataTable. { // Definiera sökningen const string sql = "SELECT * FROM Logs INNER JOIN Tenants ON Logs.Tag = Tenants.Tag WHERE Door = @door ORDER BY Date DESC LIMIT 20"; // Gör sökningen var dt = DBHandler.GetDataTable(sql, "@door", door); // Kolla om DataTablen innehåller något if (dt?.Rows.Count > 0) { return(DBHandler.GetDataTable(sql, "@door", door)); } else { return(dt); } }
// Snodd från purchase exempel public static void InitiateDatabase() { if (DatabaseCheck()) { // Kollar ifall tables finns. Annars skapar nya. DBHandler.CreateTable("Door_Explanation", "Door_Name TEXT PRIMARY KEY", "Explanation TEXT"); DBHandler.CreateTable("Event", "Code TEXT", "Explanation TEXT PRIMARY KEY", "Code"); DBHandler.CreateTable("Location", "Door TEXT PRIMARY KEY", "Door"); DBHandler.CreateTable("Logs", "Date TEXT NOT NULL", "Door TEXT NOT NULL", "Event TEXT NOT NULL", "Tag TEXT NOT NULL"); DBHandler.CreateTable("Tenants", "Apartment TEXT", "Location TEXT NOT NULL", "Tenant TEXT", "Tag TEXT UNIQUE"); DBHandler.CreateTable("Tenants_Info", "Name TEXT PRIMARY KEY", "Info TEXT"); // Fyller i med random rader i Logs for (int i = 0; i < 200; i++) { LogSeeder.GetRandomLogInput(); } //Kollar om data finns i tables. Annars lägg in datan. } }