向表添加列和数据

时间:2018-08-31 08:07:47

标签: sql sql-server ssms

我正在尝试运行以下查询。当我分别运行它们时,代码可以正确执行。当我一起运行它们时,会收到错误消息:

  

第207层,状态1,第11行,第11条
  无效的列名“ TotOP”。

     

第207级状态1的12行消息
  无效的列名“ TotPK”。

好像第一个查询根本没有运行? -任何想法

作为一种变通办法,我知道我可以在开始时生成所有列,并且仅部分填充表,而将最后两列留空,直到运行第二个查询为止,但是我很想知道为什么可以运行这些语句分开但不在一起。

查询1:

RewriteEngine On

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule ^(.*)$ index.php?$1 [QSA]

查询2:

ALTER TABLE [fcgen].[RPD1yeardata]
     ADD [TotOP] DECIMAL (7,3) NULL, 
         [TotPK] DECIMAL (7,3) NULL;

1 个答案:

答案 0 :(得分:1)

查询1秒后只需使用GO

ALTER TABLE [fcgen].[RPD1yeardata]
ADD [TotOP] DECIMAL (7,3) NULL, 
    [TotPK] DECIMAL (7,3) NULL;

Go

--Query 2:

UPDATE [fcgen].[RPD1yeardata]
    SET [TotOP] = [1]+[2]+[3]+[4]+[5]+[6]+[7]+[8]+[9]+[10]+[11]+[12]+[13]+[14]+[39]+[40]+[41]+[42]+[43]+[44]+[45]+[46]+[47]+[48],
        [TotPK] = [15]+[16]+[17]+[18]+[19]+[20]+[21]+[22]+[23]+[24]+[25]+[26]+[27]+[28]+[29]+[30]+[31]+[32]+[33]+[34]+[35]+[36]+[37]+[38]
    FROM [fcgen].[RPD1yeardata];