Php 如何在mysql中向子表插入数据

Php 如何在mysql中向子表插入数据,php,mysql,insert,relational-database,inner-join,Php,Mysql,Insert,Relational Database,Inner Join,我有两个表,一个文章和一个总结表 摘要表是articles表的子表,我想通过articles表将数据添加到摘要表中 汇总表的sql如下所示: CREATE TABLE summaries( summary_id INT NOT NULL AUTO_INCREMENT, article_id INT, summary TEXT, PRIMARY KEY(summary_id), FOREIGN KEY(article_id) REFERENCES articles

我有两个表,一个文章和一个总结表

摘要表是articles表的子表,我想通过articles表将数据添加到摘要表中

汇总表的sql如下所示:

  CREATE TABLE summaries(
   summary_id INT NOT NULL AUTO_INCREMENT,
   article_id INT,
   summary TEXT,
   PRIMARY KEY(summary_id),
   FOREIGN KEY(article_id) REFERENCES articles(article_id)
  )ENGINE=INNODB;
如何将摘要添加到摘要表中,并使article_id与我的articles表中的article_id相等

以下是我如何将数据保存到articles表:

 $sql = "INSERT INTO articles  (url, domain, favicon, title) VALUES ( '$url','$domain','$favicon','$title')";
    if (mysql_query($sql)){
        $s = "SELECT max(article_id) from articles"; 
        $object1 = mysql_query($s);
    }
以下是我想做的:

       $large_summary = $article_array['summary'];
       foreach ($large_summary as $summary){
          // $summary_sql = "INSERT INTO summaries SET `summary`=(SELECT `sum`.`summary` FROM summaries as sum, articles as art WHERE art.article_id=sum.article_id AND art.article_id=$object1 -> article_id)";
        $summary_sql = "INSERT INTO `summaries` (summary,article_id) VALUES ('$summary' , ('SELECT article_id FROM articles WHERE article.article_id=summary.article_id AND article.article_id = $object1 -> article_id' ))";
        echo $summary_sql;
        $summary_sql_query = mysql_query($summary_sql);

    if(!mysql_query($sql2)){
      die('Error: ' . mysql_error());
    }
        echo "$summary <br>";
    }
我正在遍历大型摘要数组以获得一个单独的摘要,我想通过文章it is for(它是为)保存到数据库中。请尝试:

INSERT INTO summaries SET `summary`=
(SELECT `art`.`summary` FROM summaries as sum, articles as art WHERE
art.article_id=sum.article_id AND art.article_id=123)

Here '123' is a sample article_id i am passing. You have to pass your real article_id
INSERT INTO `summaries` (summary,article_id)
    VALUES ($yoursummryVar , (SELECT article_id 
                              FROM articles
                              WHERE ........)
    )

你有没有尝试在摘要中插入…?如果我这样做的话。我已经创建了一个父表并用数据填充了它,因为我的键是自动递增的,所以文章不会与摘要相关联。示例数据将非常清楚您想要什么。@echo\u Me运行代码时返回一个错误,**查询为空**请您引导我查看代码。我来自RubyonRails的背景,ActiveRecord将我从sql中抽象出来,所以这对我来说有点新。您可以从第二行开始,因为第一行是easySecond,第二行是子查询。在这里,我通过使用“article_id”连接两个表并传递一个article_id值,例如“123”,从articles表中选择“summary”。在此查询中,文章_id“123”的摘要将插入摘要表中。我现在已经理解了代码。不过我想知道一些事情。我输入的数据是动态的,汇总表是空的,articles表在第17行,因此没有article_id等于sum.article_id。我使用的是php。如果您在每分钟后获取数据,您将如何为此编写sql?顺便说一句,我运行sql时出现错误:**1054-字段列表中的未知列“art.summary”**