in updatecommand

update table set fld=? where
fld=? or (? is null and fld is null)

what does the second line mean
How does it assign parameters?