Я пытаюсь INSERT OR UPDATE IF EXISTS в одной транзакции. в mysql я обычно использовал DUPLICATE KEY («ОБНОВЛЕНИЕ НА КЛЮЧЕ DUPLICATE».) Я знаю много решений этой проблемы, используя различные варианты и подзапросы SQL, но я пытаюсь реализовать это в Doctrine (PHP ORM ). Похоже, что для этого будут методы Doctrine, так как они настолько функциональны, […]
UPD : Admin изменил заголовок, и я нашел решение: http://code.google.com/p/php–sql-parser/ Я пытаюсь заключить sql-запрос в php-массив. Например: SELECT col_name FROM tbl_name WHERE col_name> 0; Должен вернуть что-то вроде: array( 'table' => 'tbl_name', 'value' => array('col_name'), 'where' => array('col_name > 0') ); Я нашел это . Мб вы знаете какое-нибудь лучшее решение?
Есть ли хорошая библиотека объектно-реляционного сопоставления для PHP? Я знаю PDO / ADO, но они, похоже, обеспечивают абстрагирование различий между поставщиками баз данных, а не фактическое сопоставление между моделью домена и реляционной моделью. Я ищу библиотеку PHP, которая работает аналогично тому, как Hibernate делает для Java и NHibernate для .NET.
Я создаю специальный гидратор в Doctrine 2 в проекте Symfony 2, но для того, чтобы он выполнял то, что ему нужно, ему нужна еще одна услуга. Документация для пользовательских гидраторов показывает только, как обеспечить класс гидратора, поэтому нет возможности вводить зависимости. Например: $em->getConfiguration()->addCustomHydrationMode('CustomHydrator', 'MyProject\Hydrators\CustomHydrator'); Я подозреваю, что Doctrine инициализирует сами гидраторы, и поэтому любые зависимости […]
Мне интересно, какой лучший, самый чистый и самый простой способ работать со многими отношениями в Doctrine2. Предположим, что у нас есть альбом типа Master of Puppets от Metallica с несколькими треками. Но учтите тот факт, что один трек может появиться в более чем одном альбоме, например Battery by Metallica – три альбома показывают этот трек. […]
Я использую Symfony 2.7 с Doctrine . Мои действия контроллера часто выглядят так: # my/namespace/Controller/ItemsController.php -> listAction() $items = $this->get('repository.items')->findAll(); return $this->render('itemsList.html.twig', array('items' => $items)); В моих шаблонах мне нравится перебирать связанные объекты : # my/namespace/Resources/views/itemsList.html.twig {% for item in items %} Item: {{ item.name }} <br/> Groups: <br/> <ul> {% for group in item.groups […]
Как установить значение по умолчанию в Doctrine 2?
В настоящее время у меня есть объект, который я бы хотел немного изменить при загрузке. Эта модификация будет одноразовым изменением, которое затем будет сохраняться в новом поле вместе с сущностью. Чтобы прояснить мою текущую цель: сущность – это «Местоположение» и является частью вложенного набора. Он имеет имя, значения lft / rgt и идентификатор. Одна вычислительно […]
Мы используем Doctrine, PHP ORM. Я создаю такой запрос: $q = Doctrine_Query::create()->select('id')->from('MyTable'); а затем в функции, которую я добавляю в различных местах, где это необходимо, $q->where('normalisedname = ? OR name = ?', array($string, $originalString)); Позже, перед execute() этого объекта запроса, я хочу распечатать необработанный SQL, чтобы проверить его и сделать следующее: $q->getSQLQuery(); Однако это выводит […]
Я хотел бы расширить классы Entity \ Base, как это сделать в Doctrine 2.1? Мои исследования показали, что всякий раз, когда кто-то сталкивается с проблемой с этим, он переключается на Doctrine 1.2:) n Я использую конфигурацию yaml