2017-08-14 48 views
0

我在PHP 7.1的Apache web服务器上的一个非常简单的mysqli声明:插入选择问题的mysqli PHP

INSERT INTO user SELECT * FROM user_geloescht WHERE id = '294930'; 

这应该用户复制到一个单独的表中删除的用户。但是当我运行脚本时,数据库没有任何反应。当我将该陈述复制到我的mariadb cli时,它没有任何错误。

我已经找了一个类似的“从用户显示列”和... user_geloescht输出,但不能解决它。

我会给你一些调试,但查询结果是正确的 - >所以没有错误。

什么可能是错误的或我可以提供什么输出?

编辑:正如我在评论中写的 - 它在我插入选择后立即执行代码退出时起作用,因此它可能是关于提交的内容。

一个在用户表这是后插入 - 选择进行用户ID删除,也无任何影响

我将让您及时了解最新的我试图强迫提交后。

把PHP代码是否不容易通过我的阶级结构和参数处理某些功能

+0

请使用提供给您的调试[功能](http://php.net/manual/en/mysqli.error.php)帮助我们帮助您并包含您的所有代码。 – Script47

+3

请发布php代码 –

+0

您确定“user_geloescht”确实包含用户标识“294930”? –

回答

0

哦,我想我需要更多的咖啡:D。

问题是,everythink正常工作,但我处理它都是错误的。

插入选择没问题,但是我的删除指向了错误的表格,所以我将用户从user_geloescht表复制到用户表,但删除了用户表上的复制用户而不是user_geloescht表。

感谢你的努力 - >我会要求一些节日:d

0

之间产生,这是语法:

INSERT INTO user (name)SELECT name FROM user WHERE id = 294930 

假设你只有在一个有一列用户表称为名称。我不知道user_geloescht是什么意思。是表格还是列名。

+0

有两个表:user和user_geloescht,它们都具有相同的结构(它的历史错误)具有大约190列,所以我不会在语句中命名每个列,它只是相同的结构 –

+0

INSERT INTO this_table_archive(*)SELECT * FROM this_table WHERE id = 294930;只要确保2表的列是相同的。相同的名称和列数。 – Deee