我有一个包含列'id'和'name'
的表格id Name
1 John
2 Peter
3 Alex
4 Robin
5 Mario
所以当我删除记录'3 Alex'时应该如下所示。我知道可以使用行号,但我不知道怎么做。我需要一个适当的sql来在vb.net(或访问)中使用。
id Name
1 John
2 Peter
3 Robin
4 Mario
答案 0 :(得分:0)
创建临时表:
DECLARE @tbl TABLE(
[Name] VARCHAR(64) NULL
, OldID INT NULL
, NewID INT INCREMENT(1,1)
)
INSERT INTO @tbl
(
[Name]
, OldID
)
SELECT
[Name]
, ID
FROM
OriginalDataTable
WHERE
ID NOT IN (4, 5) ' actually 3 for your example
ORDER BY
ID
SELECT
[Name]
, NewID ID
FROM
@tbl
ORDER BY
NewID
我有点假设你真的不想改变实际的ID,因为上面提到的这不是好的做法。