Если вы действительно не знаете, есть ли там запись, вам, вероятно, нужно проверить это немного раньше в процессе выполнения программы.Обычно я начинаю функцию или что-то еще с вызова БД, и если я не получаю существующий объект записи, я создаю новый из stdClass.
Это имеет два преимущества: во-первых, это означает, что вы знаете о существующих данных, поэтому вы можете использовать их при необходимости и не перезаписывать их вслепую.Второе: когда вы достигаете точки записи в БД, вы знаете, является ли она INSERT или UPDATE, в зависимости от того, имеет ли объект свойство id.