SQL Server 2008 将列作为标识添加到现有表



我需要向现有表添加一列。 此列必须添加到表的末尾,并且必须是递增的整数。(身份)。

可以在现有表上完成吗?如果是,如何完成?

基本上我正在传输此表并需要读取它。 为此,我使用此查询:

select * 
from (select 
         *, 
         ROW_NUMBER() over (order by localcol desc) as RowId 
      from " & i & ") dt 
where 
    RowId between  " & currentrow & " and " & currentrow + TextBox7.Text

但这需要太多内存,并且正在运行的 PLC 挂起,因为表有 3.000.000 行。

由于这只需要偶尔完成一次,因此我想添加一个identity列,使用此列作为范围执行查询,最后再次删除该列。

是的,你可以这样做。 只需使用 CREATE TABLE 创建一个新表并指定现有列即可。然后再添加 1 个身份。 将数据插入到此新表中,执行您需要执行的任何处理操作,然后使用 DROP TABLE 删除该表。

您也可以选择使用临时表做同样的事情。

最新更新