Доктрина и MySQL

#mysql #doctrine #database-connection

#mysql #доктрина #подключение к базе данных

Вопрос:

У меня есть несколько вопросов о совместной работе Doctrine и MySQL. Я не понимаю этого на 100%

Я где-то читал, что Doctrine может взаимодействовать с MySQL DB. Как это происходит?

  1. Как мне загрузить мою базу данных?

  2. Как мне работать с моими таблицами MySQL с помощью doctrine (я не думаю о создании новых)?

  3. Сохраняет ли Doctrine автоматически изменения в базе данных?, если нет, то как?

Некоторый пример кода был бы отличным. Меня не слишком волнует язык, который может быть на PHP, Yaml и других.

Комментарии:

1. что вы имеете в виду под «загрузить мою базу данных»?

2. Разве в doctrine нет документации с примерами? Я думаю, что это должно быть первое место, с которого нужно начать.

Ответ №1:

a) пожалуйста, укажите больше, что вы используете с помощью «load DB». Doctrine — это ORM. проверьте здесь документы: http://www.doctrine-project.org/projects/orm/1.2/docs/hu (проверьте кулинарную книгу)

б) операции с таблицами с Doctrine выполняются с помощью DQL, пример:

 $q = Doctrine_Query::create()
    ->from('User u')
    ->leftJoin('u.Phonenumbers p');

$q->execute(); //you get a doctrine collection to iterate results of query
  

c) НЕТ, вам нужно сохранить объект

 $account = new Account();
$account->name = 'test 1';
$account->amount = '100.00';
$account->save();
  

вот класс учетной записи

 class Account extends Doctrine_Record
{
    public function setTableDefinition()
    {
        $this->hasColumn('name', 'string', 255);
        $this->hasColumn('amount', 'decimal');
    }
}