Insert means entering or putting something into
Update means changing something, changing an existing value
Insert should (only) be used to enter data into an empty or partially empty record/table
Update should (only) be used to change existing values in a record/table
SQL does not comply with this semantically or logically
When doing a partial insert into a 5 column table for example:
Insert into table (column1,column2,column3) values (value1,value2,value3)
This leaves 2 columns empty.
As stated above, Insert should (only) be used to enter data into an empty or partially empty record/table.
Insert into table (column4,column5) values (value4,value5) where column1 = value
Then update existing values as/when necessary.
Updating an empty column (field) should raise an error, IMO
SQL works, but semantically, Insert and Update are both implemented wrong. But who cares about semantics or logic as long as it works