Я работаю с SQL Server 2008. Возможно ли изменить вычисленный столбец, не опуская столбца, а затем добавив его снова (что я могу приступить к работе)? Например, у меня есть эта таблица:SQL - как ALTER COLUMN на вычисленном столбце
CREATE TABLE [dbo].[Prices](
[Price] [numeric](8,3) NOT NULL,
[AdjPrice] AS [Price]/[AdjFactor],
[AdjFactor] [numeric](8,3) NOT NULL)
Позже понял, что у меня есть потенциал деления на ноль, я хочу, чтобы изменить столбец [Adjprice], чтобы справиться с этим, но если я просто перенесите колонку и добавить его снова , Я теряю порядок столбцов.
Я хочу сделать что-то вроде:
ALTER TABLE dbo.[Prices]
ALTER COLUMN [AdjPrice] AS (CASE WHEN [AdjFactor] = 0 THEN 0 ELSE [Price]/[AdjFactor] END)
Но это не правильно. Если это возможно, или есть другое решение, я был бы признателен за помощь.
Какой порядок столбцов? – MartW
порядок столбцов абсолютно не имеет отношения к SQL Server в любом случае - зачем беспокоиться о его сохранении? Падение и воссоздание - единственный путь. –
Если вы пишете свои запросы так, чтобы они зависели от порядка столбцов, остановитесь. –