• Tim mentions that once a function is used within a calculated column the function can not be altered or dropped.  This is a serious problem.

    I have inherited a group of databases that use a function to calculate taxes in a calculated column in multiple tables.  At first glance this seems reasonable because it allow for code reuse.  The problem comes when the tax calculation was discovered to be wrong. This affected 5 tables in 60 databases.

    There is a solution to this problem, but again it must be handled with care.  Drop all the calculated columns, alter the user defined function, and then alter all the tables to add the calculated columns back.  I think you can see the number of points where an error could be introduced.

    While using user defined functions within calculated columns is possible, for the purposes of maintainability I do not recommend it.