Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/78.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 基于服务的数据库的序列号_C#_Sql_Tsql_Visual Studio 2015_Local Database - Fatal编程技术网

C# 基于服务的数据库的序列号

C# 基于服务的数据库的序列号,c#,sql,tsql,visual-studio-2015,local-database,C#,Sql,Tsql,Visual Studio 2015,Local Database,我试图弄清楚,如果我的本地数据库(基于服务的数据库)中的任何一行被删除,我想给被删除行的第二行(删除后的下一行)索引,当然,所有后续行都有相同的退步,在插入时保持行的原始顺序也很重要。所以我从这里开始问同样的问题:但现在我在寻找一种不同的解决方法。我想把这行数用于一些计算,以读取行数。很快就明白了,最好不要这样做,因为我在这里尝试过,所以我似乎需要数字序列。因此,在这种情况下,索引号表示序列号,例如: 第1行 第2行 第3行 第4行 如果删除了第2行,我希望得到以下结果: 第1行 第3行 第4行

我试图弄清楚,如果我的本地数据库(基于服务的数据库)中的任何一行被删除,我想给被删除行的第二行(删除后的下一行)索引,当然,所有后续行都有相同的退步,在插入时保持行的原始顺序也很重要。所以我从这里开始问同样的问题:但现在我在寻找一种不同的解决方法。我想把这行数用于一些计算,以读取行数。很快就明白了,最好不要这样做,因为我在这里尝试过,所以我似乎需要数字序列。因此,在这种情况下,索引号表示序列号,例如:

  • 第1行
  • 第2行
  • 第3行
  • 第4行
  • 如果删除了第2行,我希望得到以下结果:

  • 第1行
  • 第3行
  • 第4行

  • 如果删除所有行,然后插入新行,则新行变为1。新的第一行和非第五行。新的第一行现在可以与索引一起使用

    我认为您应该使用一个自动递增的字段(比如
    ID
    )来“在插入时保持行的原始顺序”。例如,使用视图从表中选择行,使用函数模拟序列号

    CREATE VIEW T_WITH_ROW_ID  
    AS
    SELECT ROW_NUMBER() OVER(ORDER BY ID) as ROW_ID,
           T.*
           FROM T
    
    并将其用作

    SELECT * FROM T_WITH_ROW_ID  
    

    我认为您应该使用一个自动递增的字段(比如
    ID
    )来“在插入时保持行的原始顺序”。例如,使用视图从表中选择行,使用函数模拟序列号

    CREATE VIEW T_WITH_ROW_ID  
    AS
    SELECT ROW_NUMBER() OVER(ORDER BY ID) as ROW_ID,
           T.*
           FROM T
    
    并将其用作

    SELECT * FROM T_WITH_ROW_ID  
    

    我怀疑你是否真的需要存储连续的数字。相反,我建议使用一个自动递增字段来维护您的订单,然后在视图中处理这个“显示”逻辑。。。不要把数据库看作是一种表示逻辑,而是一种存储,在这种存储中,一些字段可以按顺序生成预期结果…@sgedes我已经尝试使用t-sql自动增量设置来完成这项工作,从我这里开始,但这似乎不是一个很好的主意。我怀疑您是否真的需要存储连续的数字。相反,我建议使用一个自动递增字段来维护您的订单,然后在视图中处理这个“显示”逻辑。。。不要把数据库看作是一种表示逻辑,而是一种存储,其中一些字段可以按顺序排列以产生预期的结果…@sgedes我已经尝试使用t-sql自动增量设置来完成这项工作,但这似乎不是一个很好的主意