Each record in a Collection (database) has a record id - it’s probably hidden. It’s field name is _id. You need to include this record id in your update object so the code knows which record to update. You do not need an id for an insert - there is no id since the record has not been created, yet.
The way I code keeps evolving, but this is how I like doing my updates at the moment. Put the results of your query into a new object - that way you have all the data from the query (_id, all other field values). Then, in the new object, change only the fields you want to update. Use this new object to perform the update (you’ll have all the previous data from the results that you put in your new object and didn’t change).
myQuery . eq ( "_owner" , userId )
. find ()
. then (( res )=>{
**if** ( res . items . length > 0 ){
**let** objResults = res . items [ 0 ];
// You already have the record id objResults._id (res.items[0]._id)
// Change the fields you need to change, leave the rest
objResults .businessName = toUpdate . businessName
objResults . businessEmail = toUpdate . businessEmail
console . log ( "Data found: " , res . items )
wixData . update ( "Properties" , objResults )