В Microsoft SQL Server я знаю запрос, чтобы проверить, существует ли ограничение по умолчанию для столбца и удалить ограничение по умолчанию:
IF EXISTS(SELECT * FROM sysconstraints
  WHERE id=OBJECT_ID('SomeTable')
  AND COL_NAME(id,colid)='ColName'
  AND OBJECTPROPERTY(constid, 'IsDefaultCnst')=1)    
ALTER TABLE SomeTable DROP CONSTRAINT DF_SomeTable_ColName
Но из-за опечатки в предыдущих версиях базы данных имя ограничения может быть DF_SomeTable_ColName или DF_SmoeTable_ColName.
Как удалить ограничение по умолчанию без каких-либо ошибок SQL? Имена ограничений по умолчанию не отображаются в таблице INFORMATION_SCHEMA, что делает вещи немного сложнее.
Итак, что-то вроде "удалить ограничение по умолчанию в этой таблице/столбце" или "удалить DF_SmoeTable_ColName", но не выдавайте никаких ошибок, если оно не может найти его.
