Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class Database
- {
- private static readonly string dbFile = "habits.db";
- public static void CreateDatabase()
- {
- Console.WriteLine("Creating Database");
- SQLiteConnection.CreateFile("habits.db");
- using (var sqlite = new SQLiteConnection(@"Data Source=habits.db"))
- {
- sqlite.Open();
- string sql = "CREATE TABLE IF NOT EXISTS habits(Name string, Date string, TrackType string, Description string)";
- SQLiteCommand command = new SQLiteCommand(sql, sqlite);
- command.ExecuteNonQuery();
- }
- Console.WriteLine("New Database Created");
- }
- public static void SaveEntry(Habit newHabit)
- {
- using (SQLiteConnection sqlite = new SQLiteConnection(@"Data Source=habits.db"))
- {
- using (SQLiteCommand cmd = new SQLiteCommand())
- {
- sqlite.Open();
- cmd.CommandText = "INSERT INTO habits(Name, Date, TrackType, Description) VALUES ($Name, $Date, $TrackType, $Description)";
- cmd.Parameters.Add(new SQLiteParameter("$Name", newHabit.Name));
- cmd.Parameters.Add(new SQLiteParameter("$Date", newHabit.Date.ToString()));
- cmd.Parameters.Add(new SQLiteParameter("$TrackType", newHabit.TrackType));
- cmd.Parameters.Add(new SQLiteParameter("$Description", newHabit.Description));
- cmd.ExecuteNonQuery();
- sqlite.Close();
- }
- }
- }
- public static List<Habit> GetHabits()
- {
- return new List<Habit>();
- }
- public static void UpdateEntry(Habit oldHabit, Habit newHabit)
- {
- using (SQLiteConnection sqlite = new SQLiteConnection(@"Data Source=habits.db"))
- {
- using (SQLiteCommand cmd = new SQLiteCommand())
- {
- using (SQLiteCommand cmd2 = new SQLiteCommand())
- {
- sqlite.Open();
- cmd.CommandText = "SELECT * FROM habits WHERE Name=@CurrentName";
- cmd.Parameters.Add(new SQLiteParameter(oldHabit.Name));
- cmd.ExecuteNonQuery();
- cmd2.CommandText = @"UPDATE habits SET
- Name = @NewName,
- Date = @NewDate,
- TrackType = @NewTrackType,
- Description = @NewDescription";
- cmd2.Parameters.Add(new SQLiteParameter("@NewName", newHabit.Name));
- cmd2.Parameters.Add(new SQLiteParameter("@NewDate", newHabit.Date));
- cmd2.Parameters.Add(new SQLiteParameter("@NewTrackType", newHabit.TrackType));
- cmd2.Parameters.Add(new SQLiteParameter("@NewDescription", newHabit.Description));
- cmd2.ExecuteNonQuery();
- sqlite.Close();
- }
- }
- }
- }
- public static void DeleteEntry(Habit habit)
- {
- using (SQLiteConnection sqlite = new SQLiteConnection(@"Data Source=habits.db"))
- {
- using (SQLiteCommand cmd = new SQLiteCommand())
- {
- sqlite.Open();
- cmd.CommandText = "DELETE FROM habits WHERE Name=@CurrentName";
- cmd.Parameters.Add(new SQLiteParameter("@CurrentName", habit.Name));
- cmd.ExecuteNonQuery();
- sqlite.Close();
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment