在 table 中的行之间插入数据
Data inserting in between the rows in table
我有一个 table,它有大约 1,000,000 条记录。我注意到当我插入一条记录时,它最后并没有被插入,而是被插入在
之间
例子
我的table(测试)
Si.
姓名。
地址。
1.
测试。
1/2 测试
2.
测试。
3/4 测试
Si 创建了唯一索引但没有定义主键
所以当我插入 table
Insert into testing (si,name,address) Values (3., Test., 5/6 test)
我得到以下
Si.
姓名。
地址。
1.
测试。
1/2 测试
3.
测试。
5/6 测试
2.
测试。
3/4 测试
我该如何解决这个问题。
据我所知,该值通常会在最后插入,但仅此一项就可以做到这一点。
你的“问题”根本不是问题。
这是我们正在谈论的关系数据库。把它想象成一个装满苹果的篮子。当您将一个新苹果放入其中时,您如何知道在这个苹果之前 插入 哪个苹果?你不能。
插入关系数据库也是如此table - 可以在任何地方插入行。
如果您想 return 行按特定顺序排列,您 必须 使用 ORDER BY
子句。当然,还有一些数据可以作为排序依据。在您的示例中,这是 si
列。
因此,而不是
select * from testing;
你
select * from testing order by si;
这就是它的工作原理;你对此无能为力。 有时 看起来好像可以省略 order by
,但这是一种误导,您不能依赖它。始终使用 ORDER BY
.
我有一个 table,它有大约 1,000,000 条记录。我注意到当我插入一条记录时,它最后并没有被插入,而是被插入在
之间例子
我的table(测试)
Si. | 姓名。 | 地址。 |
---|---|---|
1. | 测试。 | 1/2 测试 |
2. | 测试。 | 3/4 测试 |
Si 创建了唯一索引但没有定义主键
所以当我插入 table
Insert into testing (si,name,address) Values (3., Test., 5/6 test)
我得到以下
Si. | 姓名。 | 地址。 |
---|---|---|
1. | 测试。 | 1/2 测试 |
3. | 测试。 | 5/6 测试 |
2. | 测试。 | 3/4 测试 |
我该如何解决这个问题。
据我所知,该值通常会在最后插入,但仅此一项就可以做到这一点。
你的“问题”根本不是问题。
这是我们正在谈论的关系数据库。把它想象成一个装满苹果的篮子。当您将一个新苹果放入其中时,您如何知道在这个苹果之前 插入 哪个苹果?你不能。
插入关系数据库也是如此table - 可以在任何地方插入行。
如果您想 return 行按特定顺序排列,您 必须 使用 ORDER BY
子句。当然,还有一些数据可以作为排序依据。在您的示例中,这是 si
列。
因此,而不是
select * from testing;
你
select * from testing order by si;
这就是它的工作原理;你对此无能为力。 有时 看起来好像可以省略 order by
,但这是一种误导,您不能依赖它。始终使用 ORDER BY
.