[英]Insert data from one table to another table using Symfony
对于这个问题,我在Stack Overflow上发现的答案很少,但是这些问题并没有解决我的问题。我正在使用symfony2框架。
我想将数据从一个表插入到另一个表并删除第一个表中的数据。
假设有两个表叫做Book&Author。 (请注意,作者表具有其他表字段)
public function BooktoAuthorAction(Request $request, $id) {
$response = new Response();
$em = $this->getDoctrine()->getManager();
$books = $em->getRepository("BooksBundle:Books")->findBy(array('booktype' => 'novel'));
$em = $this->getEntityManager();
$query = $em->createQuery(
'INSERT INTO contact(bookName, isbn)
VALUES('book_name', 'isbn_no')
);
$em = $this->getDoctrine()->getManager();
$em->flush();
}
return $response;
}
我有一个名为'book_type'的表字段,我在其中存储特定书籍所属的类别。我想更改书籍类型,例如,当将数据从Book表插入到Author表时,我想将book_type'novel '更改为'drama'
我也想从数据表中删除数据行一旦数据传输到作者表。
*请注意,我更改了变量名称的实际代码的方法名称。
更新
我找到了解决问题的方法,更新了代码,现在使用实体而不是查询将数据从Book表传递到Author表。
*作者和书籍是两个不同组合中的两个不同实体
public function BookAuthorAction(Request $request, $id) {
$response = new Response();
$em = $this->getDoctrine()->getManager();
$books = $em->getRepository('BooksBundleBundle:Books')->find($id);
$author = new Author();
$author->setBookName($books->getBookName());
$author->setIsbnNo($books->getIsbnNo());
$author->setBookType('drama'); //passing a string as a book type
$em->persist($author);
$em->remove($books);
$em->flush();
return $response;
}
尝试映射表并进行相应更新; 这可能有帮助
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.