Beispiel #1
0
        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);
        }
Beispiel #2
0
        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;
            }
        }