I most commonly define my columns as NOT NULL. I also don't usually set a default value and just let MySQL use its normal default for the column type when I insert a record without data for a field. (usually 0 int or “” for string)
My problem is that when entering a new row through SQLyog it starts with NULL as the default value in the editor for all column values even though they are defined as NOT NULL. So if I only want to enter data for one or two columns I have to go through and erase the NULL for every other column or I will get the error message about not being able to save NULL values to the column.
SQLyog could make it much easier for me if it didn't try and submit NULL for all fields by default. If it knew that the columns were defined at NOT NULL then it wouldn't put NULL as the default value but instead leave it empty and let MySQL decide what the correct default value is for that data type.
I have used SQLyog for many years and it just recently hit me that maybe this could be easily avoided because it is an occasional annoyance on my part to erase NULL from all of the editor fields.