| Author |
Message |
Powlin
Joined: 16 May 2007 Posts: 30
|
Posted: Thu Oct 18, 2012 9:03 pm Post subject: Synchronize PERSISTED computed column with function |
|
|
I'm trying to update a function with SCHEMABINDING that is used by a persisted computed column on a table, I always get this error while editing :
** Cannot ALTER 'dbo.getFormatDateHourOnly' because it is being referenced by object 'data_QueueingANO'.
In my dev box I remove manually any computed column, next I modify my function and after I re-add computed column.
But when I try to synchronize using SQL Compare I still get this error. This that take lot of time to remove column and re-add it, so I don't want to do it for every synchronization.
I would like to know what is the best way using SQL Compare to synchronize this type of change ?
--- Here is the declaration of the function and the table with computed column
FUNCTION getFormatDateHourOnly(@NbMinute float)
RETURNS varchar(12)
WITH SCHEMABINDING
TABLE data_QueueingANO
(
Call_ID int NOT NULL,
TimeElapsed float NULL,
TimeElapsedFormatted AS ([dbo].[getFormatDateHourOnly]([TimeElapsed])) PERSISTED
)
Thanks |
|
| Back to top |
|
 |
Brian Donahue
Joined: 23 Aug 2004 Posts: 6369 Location: Red Gate Software
|
Posted: Mon Oct 22, 2012 4:31 pm Post subject: |
|
|
This is the type of thing that SQL Compare should be really good at - if you have to change a column in a table that is bound to a view or stored procedure with schemabinding, SQL Compare is supposed to drop the procedure, make modifications to the table, then recreate the procedure.
If this is not working, I suspect that the setting to include the dependent objects is not on.
The point of schemabinding is that you cannot drop a column if it's still referenced by a schemabound object (like your stored procedure). The schemabound objects would have to be dropped first. _________________ Brian Donahue
Technical Support
Red Gate Software Ltd.
44 (0)870 160 0037 ext 8521
US and CAN 1-866-RED GATE ext 8521 |
|
| Back to top |
|
 |
|
|
All times are GMT + 1 Hour
|
| Page 1 of 1 |
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
Powered by phpBB © 2001, 2005 phpBB Group