private MobTO GetMob(string mobName) { using var sqLiteCommand = new SQLiteCommand("SELECT * FROM Mob WHERE Name = @Name", connection); sqLiteCommand.Parameters.AddWithValue("@Name", mobName); using var sqLiteDataReader = sqLiteCommand.ExecuteReader(); while (sqLiteDataReader.Read()) { var mob = new MobTO(); mob.ID = sqLiteDataReader.GetInt32(sqLiteDataReader.GetOrdinal("Mob_ID")); mob.Name = sqLiteDataReader.GetString(sqLiteDataReader.GetOrdinal("Name")); return(mob); } return(null); }
private void WriteMob(MobTO mob) { var foundMob = GetMob(mob.Name); if (foundMob == null) { using var sqLiteCommand = new SQLiteCommand("INSERT INTO Mob(Name) VALUES(@Name)", connection); sqLiteCommand.Parameters.AddWithValue("@Name", mob.Name); Console.WriteLine("Add new Mob: " + mob.Name); sqLiteCommand.ExecuteNonQuery(); sqLiteCommand.CommandText = "SELECT last_insert_rowid()"; var lastRowId64 = (long)sqLiteCommand.ExecuteScalar(); mob.ID = (int)lastRowId64; } else { mob.ID = foundMob.ID; } }