导入数据时候,newsequentialid()不能接着导入的数据的id值

winner2050 2016-10-26 10:47:02
导入数据时候,newsequentialid()不能接着导入的数据的id值。
就导致了,新增加的数据的位置可能是混在新导入的数据的中间。
这很纠结,系统是用id字段排序倒序显示,新的数据录入以后显示在第一行。
如果导入数据以后,新录入的数据可能就在好几页开外了。
...全文
531 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
中国风 2016-10-26
  • 打赏
  • 举报
回复
你要指定用newid()--随机GUID没在大小关系
中国风 2016-10-26
  • 打赏
  • 举报
回复
newsequentialid()--这是不能直接用的,你可以这样用
CREATE TABLE ImportTable2(Name sysname);
INSERT INTO dbo.ImportTable2
        (  Name )
VALUES  (  'Roy'  -- Name - sysname
          )
ALTER TABLE dbo.ImportTable2 ADD ID UNIQUEIDENTIFIER  DEFAULT (NEWSEQUENTIALID()) WITH VALUES ;

SELECT * FROM ImportTable2
/*
	Name	ID
Roy	BC9605AB-309B-E611-B22F-005056C00008
*/	
DROP TABLE ImportTable2
中国风 2016-10-26
  • 打赏
  • 举报
回复
这是本机唯一的GUID,你导入到其它机,用GUID列,不用指定默认值,指定了本机就不唯一了
Yole 2016-10-26
  • 打赏
  • 举报
回复
加个自增列,然后按自增列排序。
winner2050 2016-10-26
  • 打赏
  • 举报
回复
随机的话,作为聚集索引时,插入数据的代价就大了。 看来以后导入数据别把id也弄进去,让它重新赋值了。

27,580

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 应用实例
社区管理员
  • 应用实例社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧