Hi,
If you load an object using the NHibernate session and modify that object in memory and then commit the transaction, a common behaviour is that NHibernate would detect the changes in the object (dirty checking) and transmit the changes to the database (flushing) before issuing the command to commit the database transaction.
The exact behaviour depends on a myriad of factors such as how you mapped the object in the NHibernate configuration, how you load it, what flush mode you are using etc. Your question is very broad and shows no actual code, so the answer is unavoidably rather vague. Unless you have a specific, small and self-contained, code example you are wondering about, I recommend familiarizing yourself with the NHibernate documentation at
https://nhibernate.info/doc/index.html.
/Oskar