Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/http/4.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
如何解释SQL主键中的坏数据_Sql - Fatal编程技术网

如何解释SQL主键中的坏数据

如何解释SQL主键中的坏数据,sql,Sql,我实际上并没有使用SQL,它是一种基于SQL的专有语言,但格式类似。目前,由于用户输入错误和系统的构建方式,我们在如何将数据存储在表中方面遇到了问题。有一个优先级键可能会被错误编号,并且没有一个行号可以作为我的依据。表中的数据如下所示: 1. Name 1 2. Name 2 3. Name 3 5. Name 4 6. Name 5 举个例子。这还没有发生,但有能力有许多错键,所以我试图修复代码中的所有边缘情况,然后再尝试补救。现在,代码正在根据主键和大小设置标识符,我正在尝试编写

我实际上并没有使用SQL,它是一种基于SQL的专有语言,但格式类似。目前,由于用户输入错误和系统的构建方式,我们在如何将数据存储在表中方面遇到了问题。有一个优先级键可能会被错误编号,并且没有一个行号可以作为我的依据。表中的数据如下所示:

1.  Name 1
2.  Name 2
3.  Name 3
5.  Name 4
6.  Name 5
举个例子。这还没有发生,但有能力有许多错键,所以我试图修复代码中的所有边缘情况,然后再尝试补救。现在,代码正在根据主键和大小设置标识符,我正在尝试编写代码来说明主键编号错误

伪代码:

count = size(table)

for (x = 1 to count){
     select into:
        from table y
     where x = primarykey
     set variable = name
}
我一直在想办法解释这个错误的编号,但无论我在尝试什么,都不会抓住跳过两个数字的边缘案例。问题是循环停止在#5,而不是#6,因为表的大小是5个项目,但最后一个数字实际上是6


谢谢大家的帮助

我不完全明白你想做什么。您只是想确保迭代每一行吗?我认为您应该告诉我们您的实际工具/语言是什么,因为您的问题可能比您想象的更远离SQL,至少从这里获得答案的角度来看是这样的。主键是行的唯一标识符。它不需要(不应该)对最终用户可见。你为什么关心它有什么价值?只要它是独一无二的,你就是好的。为了扩大对“IMPULAR”的评论,人们会期望数据本身以某种方式建立优先级,而不是ID。考虑依赖ID建立优先级的稳健性:例如,在分布式或异步环境中,确保A和B的正确顺序是最可靠的方法吗?所以,问题是:记录的什么特征可以用来设置优先级(时间戳等),然后根据这些字段的排序生成优先级编号。