【问题标题】:Select all data from a table and insert it to another table从一个表中选择所有数据并将其插入到另一个表中
【发布时间】:2014-12-04 00:50:45
【问题描述】:

我想从我的一个表中选择所有数据并将其插入到另一个表中。我有这段代码,但它不起作用..这就是 phpMyadmin 所说的“MySQL 返回了一个空结果集(即零行)。(查询耗时 0.0010 秒。)”

这是我的代码:

if(isset($_POST['select_table']))
{
    $select_table = mysql_real_escape_string($_POST['select_table']);
    $query_select = "INSERT INTO pdf_table
                    SELECT * FROM $select_table";
    $select_query = mysql_query($query_select,$connectDatabase);
}

【问题讨论】:

  • 您是否检查过您选择的表格中有数据?

标签: php mysql sql select insert


【解决方案1】:

请确保两个表的列数相等。 使用以下方式插入带有选择查询的记录是一个好习惯:-

INSERT INTO pdf_table (column_1, column_2) SELECT column_1, column_2 FROM $select_table

【讨论】:

    【解决方案2】:

    你的 sql 查询是这样的

    INSERT INTO table2 (column_name(s)) SELECT column_name(s) FROM table1; 
    

    【讨论】:

      【解决方案3】:

      您使用的方法INSERT INTO pdf_table SELECT * FROM $select_table 只会给您从第一个表插入到另一个表的单行。

      根据您的要求,您希望第一个表中的所有记录都应该插入到您的 pdf_table 所以我想建议尝试以下方法 可能这就是你要找的东西

      if(isset($_POST['select_table']))
      {
          $select_table = mysql_real_escape_string($_POST['select_table']);
      
          $select_query = mysql_query( "select * from $select_table ",$connectDatabase);
      
          while ($row = mysql_fetch_array($select_query))
          {
               mysql_query( "insert into pdf_table values($row['column1'],$row['column2'],...,$row['columns']) ",$connectDatabase);
      
          }
      
      }
      

      【讨论】:

        【解决方案4】:

        试试这个:

        if(isset($_POST['select_table']))
        {
            $select_table = mysql_real_escape_string($_POST['select_table']);
            $query_select = " Create Table pdf_table ( SELECT * FROM $select_table); ";
            $select_query = mysql_query($query_select,$connectDatabase);
        }
        

        但是,此查询将创建新表“pdf_table”。

        【讨论】:

          猜你喜欢
          • 2021-12-30
          • 1970-01-01
          • 2014-02-17
          • 1970-01-01
          • 1970-01-01
          • 2013-05-25
          • 2013-03-04
          • 1970-01-01
          相关资源
          最近更新 更多