[英]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.