반응형
SQL Server 및 ASP를 기반으로하는 이전 웹 앱을 Symfony2 및 MySQL로 마이그레이션하고 있습니다. 몇 가지 쿼리를 작성하고 이전 데이터를 개별 SQL 파일로 내 보냅니다. 명령을 실행할 때 내 조명기에서 해당 파일을 어떻게 실행할 수 있습니까?
$php app/console doctrine:fixtures:load
이제 Doctrine ORM 및 엔터티와 직접 작동하는 조명기가 있지만 가져올 데이터가 많습니다.
해결 방법
좋은 해결책을 찾았습니다. ObjectManager
클래스에서 exec
메서드를 찾지 못했기 때문에이 작업은 저에게 매우 효과적입니다.
public function load(ObjectManager $manager)
{
// Bundle to manage file and directories
$finder = new Finder();
$finder->in('web/sql');
$finder->name('categories.sql');
foreach( $finder as $file ){
$content = $file->getContents();
$stmt = $this->container->get('doctrine.orm.entity_manager')->getConnection()->prepare($content);
$stmt->execute();
}
}
이 솔루션에서 조명기 클래스는 메소드로 ContainerAwareInterface
를 구현해야합니다.
public function setContainer( ContainerInterface $container = null )
{
$this->container = $container;
}
참조 페이지 https://stackoverflow.com/questions/27512053
반응형
'MySql' 카테고리의 다른 글
MySQL mysql.sock을 찾을 수 없습니다. 어디서 찾을 수 있습니까? (0) | 2020.11.26 |
---|---|
MySQL PHP 날짜에서 X 일을 뺀 날짜 (0) | 2020.11.26 |
MySQL 데이터베이스의 단일 행에 여러 이미지 이름 삽입 (0) | 2020.11.26 |
MySQL SQL 문의 동적 테이블 이름 (0) | 2020.11.26 |
MySQL mysql sproc에서 테이블 이름에 변수 사용 (0) | 2020.11.26 |
댓글