I can drop a constraint if it exists, but cannot simply add one if it doesnot exist. Is there something especially difficult about supporting this?