Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/262.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
Php MySQL在表中的指定位置后插入记录_Php_Mysql - Fatal编程技术网

Php MySQL在表中的指定位置后插入记录

Php MySQL在表中的指定位置后插入记录,php,mysql,Php,Mysql,考虑一个mysql表 id | name | content | flag ------------------------------ 1 | name1 | content1 | 0 2 | name2 | content2 | 1 3 | name3 | content3 | 0 4 | name4 | content4 | 0 我想在name3 5 | new | newc | 1 结果应该是这样的, id | name | c

考虑一个mysql表

id |  name  |  content | flag
------------------------------
1 |  name1  |  content1 | 0
2 |  name2  |  content2 | 1
3 |  name3  |  content3 | 0
4 |  name4  |  content4 | 0
我想在
name3

5 |  new    |  newc     | 1 
结果应该是这样的,

id |  name  |  content | flag
------------------------------
1 |  name1  |  content1 | 0
2 |  name2  |  content2 | 1
5 |  new    |  newc     | 1  <---- new record
3 |  name3  |  content3 | 0
4 |  name4  |  content4 | 0
id | name | content |标志
------------------------------
1 |名称1 |内容1 | 0
2 |名称2 |内容2 | 1

5 | new | newc | 1关系数据库没有行顺序的概念。如果您关心查询中打印结果的顺序,则必须使用
order BY
子句根据查询数据指定顺序。

您必须删除要插入的记录之后的记录。无法按指定顺序输入数据。但是,对于查询表,您可以使用orderby。

您可以在位置之后更新每个id,在这种情况下,使新条目的id为3。

我可以知道这样做的目的吗?最好是添加
order
列,以便根据需要对结果集进行排序。如果您有自动递增的主键,我想“id”在您的示例中。因此,您不能在特定行之前和之后插入数据。但是如果是显示,您需要按照您想要的方式进行排序,您可以使用ORDERBY子句对表列进行排序。我正在创建论坛。。。所以考虑<代码> NAME3/COD>张贴一些东西。
name3
的回复将存储在
name3
之前,记录为
new
。在以相反的顺序显示表中的所有内容时,我可以使用
mysql\u fetch\u array()
显示相应的post和reply。您有三个实体用户、post和REPLES,因此我认为您应该仅根据它们创建数据库表。创建数据库表时,只需遵循“保持简单”的概念。