MySqlConnection
class MySqlConnection extends Connection (View source)
Свойства
| DetectsConcurrencyErrors | |
| DetectsLostConnections | |
| ManagesTransactions |
Свойства
| protected PDO|Closure | $pdo | Активное соединение PDO. | из Connection |
| protected PDO|Closure | $readPdo | Активное соединение PDO, используемое для чтения. | из Connection |
| protected string | $database | Имя подключенной базы данных. | из Connection |
| protected string|null | $readWriteType | Тип соединения. | из Connection |
| protected string | $tablePrefix | Префикс таблиц для подключения. | из Connection |
| protected array | $config | Параметры конфигурации подключения к базе данных. | из Connection |
| protected callable | $reconnector | Экземпляр переподключения для подключения. | из Connection |
| protected Grammar | $queryGrammar | Реализация синтаксического анализатора запросов. | из Connection |
| protected Grammar | $schemaGrammar | Реализация синтаксического анализатора схемы. | из Connection |
| protected Processor | $postProcessor | Реализация постпроцессора запросов. | из Connection |
| protected Dispatcher | $events | Экземпляр диспетчера событий. | из Connection |
| protected int | $fetchMode | Режим извлечения по умолчанию соединения. | из Connection |
| protected int | $transactions | Количество активных транзакций. | из Connection |
| protected DatabaseTransactionsManager | $transactionsManager | Экземпляр менеджера транзакций. | из Connection |
| protected bool | $recordsModified | Указывает, были ли внесены изменения в базу данных. | из Connection |
| protected bool | $readOnWriteConnection | Указывает, должно ли соединение использовать соединение PDO «write». | из Connection |
| protected array | $queryLog | Все запросы, выполненные к подключению. | из Connection |
| protected bool | $loggingQueries | Указывает, регистрируются ли запросы. | из Connection |
| protected bool | $pretending | Указывает, находится ли соединение в режиме «сухого запуска». | из Connection |
| protected array | $beforeExecutingCallbacks | Все обратные вызовы, которые должны быть вызваны перед выполнением запроса. | из Connection |
| protected Connection | $doctrineConnection | Экземпляр подключения Doctrine. | из Connection |
| protected array | $doctrineTypeMappings | Сопоставления типов, которые должны быть зарегистрированы с новыми подключениями Doctrine. | из Connection |
| static protected array | $resolvers | Решатели подключения. | из Connection |
Методы
| bool | causedByConcurrencyError(Throwable $e)
Определить, было ли данное исключение вызвано ошибкой конкурентного доступа, такой как тупик или ошибка сериализации. | from DetectsConcurrencyErrors |
| bool | causedByLostConnection(Throwable $e)
Определить, было ли данное исключение вызвано потерей соединения. | from DetectsLostConnections |
| mixed | transaction(Closure $callback, int $attempts = 1)
Выполнить замыкание в рамках транзакции. | from ManagesTransactions |
| void | handleTransactionException(Throwable $e, int $currentAttempt, int $maxAttempts)
Обработать исключение, возникшее при выполнении транзакционного оператора. | from ManagesTransactions |
| void | beginTransaction()
Начать новую базу данных транзакции. | from ManagesTransactions |
| void | createTransaction()
Создать транзакцию в базе данных. | from ManagesTransactions |
| void | createSavepoint()
Создать точку сохранения в базе данных. | from ManagesTransactions |
| void | handleBeginTransactionException(Throwable $e)
Обработать исключение при начале транзакции. | from ManagesTransactions |
| void | commit()
Подтвердить активную базу данных транзакции. | from ManagesTransactions |
| void | handleCommitTransactionException(Throwable $e, int $currentAttempt, int $maxAttempts)
Обработать исключение, возникшее при подтверждении транзакции. | from ManagesTransactions |
| void | rollBack(int|null $toLevel = null)
Откатить активную базу данных транзакции. | from ManagesTransactions |
| void | performRollBack(int $toLevel)
Выполнить откат в базе данных. | from ManagesTransactions |
| void | handleRollBackException(Throwable $e)
Обработать исключение при откате. | from ManagesTransactions |
| int | transactionLevel()
Получить количество активных транзакций. | from ManagesTransactions |
| void | afterCommit(callable $callback)
Выполнить обратный вызов после подтверждения транзакции. | from ManagesTransactions |
| void | __construct(PDO|Closure $pdo, string $database = '', string $tablePrefix = '', array $config = [])
Создать новый экземпляр подключения к базе данных. | from Connection |
| void | useDefaultQueryGrammar()
Установить грамматику запросов по умолчанию. | from Connection |
| Grammar | getDefaultQueryGrammar()
Получить экземпляр грамматики запросов по умолчанию. | |
| void | useDefaultSchemaGrammar()
Установить грамматику схемы по умолчанию. | from Connection |
| Grammar | getDefaultSchemaGrammar()
Получить экземпляр грамматики схемы по умолчанию. | |
| void | useDefaultPostProcessor()
Установить обработчик запросов по умолчанию. | from Connection |
| Processor | getDefaultPostProcessor()
Получить экземпляр обработчика запросов по умолчанию. | |
| Builder | getSchemaBuilder()
Получить экземпляр генератора схемы для подключения. | |
| Builder | table(Closure|Builder|string $table, string|null $as = null)
Начать флуентный запрос к таблице базы данных. | from Connection |
| Builder | query()
Получить новый экземпляр генератора запросов. | from Connection |
| mixed | selectOne(string $query, array $bindings = [], bool $useReadPdo = true)
Выполнить оператор SELECT и вернуть один результат. | from Connection |
| array | selectFromWriteConnection(string $query, array $bindings = [])
Выполнить оператор SELECT в базе данных. | from Connection |
| array | select(string $query, array $bindings = [], bool $useReadPdo = true)
Выполнить оператор SELECT в базе данных. | from Connection |
| Generator | cursor(string $query, array $bindings = [], bool $useReadPdo = true)
Выполнить оператор SELECT в базе данных и вернуть генератор. | from Connection |
| PDOStatement | prepared(PDOStatement $statement)
Настроить оператор PDO prepared. | from Connection |
| PDO | getPdoForSelect(bool $useReadPdo = true)
Получить подключение PDO для запроса SELECT. | from Connection |
| bool | insert(string $query, array $bindings = [])
Выполнить оператор INSERT в базе данных. | from Connection |
| int | update(string $query, array $bindings = [])
Выполнить оператор UPDATE в базе данных. | from Connection |
| int | delete(string $query, array $bindings = [])
Выполнить оператор DELETE в базе данных. | from Connection |
| bool | statement(string $query, array $bindings = [])
Выполнить SQL-запрос и вернуть логическое значение результата. | from Connection |
| int | affectingStatement(string $query, array $bindings = [])
Выполнить SQL-запрос и получить количество измененных строк. | from Connection |
| bool | unprepared(string $query)
Выполнить сырой, неподготовленный запрос к соединению PDO. | from Connection |
| array | pretend(Closure $callback)
Выполнить указанный обратный вызов в режиме "сухого прогона". | from Connection |
| array | withFreshQueryLog(Closure $callback)
Выполнить указанный обратный вызов в режиме "сухого прогона". | from Connection |
| void | bindValues(PDOStatement $statement, array $bindings)
Связать значения с параметрами в данном операторе. | from Connection |
| array | prepareBindings(array $bindings)
Подготовить параметры запроса для выполнения. | from Connection |
| mixed | run(string $query, array $bindings, Closure $callback)
Выполнить SQL-запрос и записать контекст его выполнения. | from Connection |
| mixed | runQueryCallback(string $query, array $bindings, Closure $callback)
Выполнить SQL-запрос. | from Connection |
| void | logQuery(string $query, array $bindings, float|null $time = null)
Записать запрос в журнал запросов подключения. | from Connection |
| float | getElapsedTime(int $start)
Получить время, прошедшее с заданного начального момента. | from Connection |
| mixed | handleQueryException(QueryException $e, string $query, array $bindings, Closure $callback)
Обработать исключение запроса. | from Connection |
| mixed | tryAgainIfCausedByLostConnection(QueryException $e, string $query, array $bindings, Closure $callback)
Обработать исключение запроса, произошедшее во время выполнения запроса. | from Connection |
| void | reconnect()
Подключиться к базе данных заново. | from Connection |
| void | reconnectIfMissingConnection()
Подключиться к базе данных заново, если подключение PDO отсутствует. | from Connection |
| void | disconnect()
Отключиться от базового подключения PDO. | from Connection |
| $this | beforeExecuting(Closure $callback)
Зарегистрировать обработчик, который будет выполняться непосредственно перед выполнением запроса к базе данных. | from Connection |
| void | listen(Closure $callback)
Зарегистрировать слушателя запросов базы данных с подключением. | from Connection |
| array|null | fireConnectionEvent(string $event)
Вызвать событие для этого подключения. | from Connection |
| void | event(mixed $event)
Вызвать данное событие, если это возможно. | from Connection |
| Expression | raw(mixed $value)
Получить новое выражение SQL-запроса. | from Connection |
| bool | hasModifiedRecords()
Определить, изменило ли подключение к базе данных какие-либо записи в базе данных. | from Connection |
| void | recordsHaveBeenModified(bool $value = true)
Указать, были ли изменены какие-либо записи. | from Connection |
| $this | setRecordModificationState(bool $value) Установить состояние изменения записи. | from Connection |
| void | forgetRecordModificationState() Сбросить состояние изменения записи. | from Connection |
| $this | useWriteConnectionWhenReading(bool $value = true) Указать, что соединение должно использовать запись PDO для чтения. | from Connection |
| bool | isDoctrineAvailable() Доступен ли Doctrine? | from Connection |
| Column | getDoctrineColumn(string $table, string $column) Получить экземпляр Doctrine Schema Column. | from Connection |
| AbstractSchemaManager | getDoctrineSchemaManager() Получить менеджер схемы Doctrine DBAL для соединения. | from Connection |
| Connection | getDoctrineConnection() Получить экземпляр подключения базы данных Doctrine DBAL. | from Connection |
| void | registerDoctrineType(string $class, string $name, string $type) Зарегистрировать пользовательский тип сопоставления Doctrine. | from Connection |
| PDO | getPdo() Получить текущее подключение PDO. | from Connection |
| PDO|Closure|null | getRawPdo() Получить текущий параметр подключения PDO без выполнения логики повторного подключения. | from Connection |
| PDO | getReadPdo() Получить текущее подключение PDO, используемое для чтения. | from Connection |
| PDO|Closure|null | getRawReadPdo() Получить текущий параметр подключения PDO для чтения без выполнения логики повторного подключения. | from Connection |
| $this | setPdo(PDO|Closure|null $pdo) Установить подключение PDO. | from Connection |
| $this | setReadPdo(PDO|Closure|null $pdo) Установить подключение PDO, используемое для чтения. | from Connection |
| $this | setReconnector(callable $reconnector) Установить экземпляр повторного подключения к соединению. | from Connection |
| string|null | getName() Получить имя подключения к базе данных. | from Connection |
| string|null | getNameWithReadWriteType() Получить полное имя подключения к базе данных. | from Connection |
| mixed | getConfig(string|null $option = null) Получить опцию из конфигурационных опций. | from Connection |
| string | getDriverName() Получить имя драйвера PDO. | from Connection |
| Grammar | getQueryGrammar() Получить синтаксический анализатор запросов, используемый подключением. | from Connection |
| $this | setQueryGrammar(Grammar $grammar) Установить синтаксический анализатор запросов, используемый подключением. | from Connection |
| Grammar | getSchemaGrammar() Получить синтаксический анализатор схемы, используемый подключением. | from Connection |
| $this | setSchemaGrammar(Grammar $grammar) Установить синтаксический анализатор схемы, используемый подключением. | from Connection |
| Processor | getPostProcessor() Получить обработчик запросов после обработки, используемый подключением. | from Connection |
| $this | setPostProcessor(Processor $processor) Установить обработчик запросов после обработки, используемый подключением. | from Connection |
| Dispatcher | getEventDispatcher() Получить диспетчер событий, используемый подключением. | from Connection |
| $this | setEventDispatcher(Dispatcher $events) Установить экземпляр диспетчера событий для подключения. | from Connection |
| void | unsetEventDispatcher() Удалить диспетчер событий для этого подключения. | from Connection |
| $this | setTransactionManager(DatabaseTransactionsManager $manager) Установить экземпляр менеджера транзакций для подключения. | from Connection |
| void | unsetTransactionManager() Удалить менеджер транзакций для этого подключения. | from Connection |
| bool | pretending() Определить, находится ли подключение в режиме "сухого запуска". | from Connection |
| array | getQueryLog() Получить журнал запросов подключения. | from Connection |
| void | flushQueryLog() Очистить журнал запросов. | from Connection |
| void | enableQueryLog() Включить журнал запросов для подключения. | from Connection |
| void | disableQueryLog() Отключить журнал запросов для подключения. | from Connection |
| bool | logging() Определить, ведем ли мы логирование запросов. | from Connection |
| string | getDatabaseName() Получить имя подключенной базы данных. | from Connection |
| $this | setDatabaseName(string $database) Установить имя подключенной базы данных. | from Connection |
| $this | setReadWriteType(string|null $readWriteType) Установить тип чтения/записи подключения. | from Connection |
| string | getTablePrefix() Получить префикс таблицы для подключения. | from Connection |
| $this | setTablePrefix(string $prefix) Установить префикс таблицы, используемый подключением. | from Connection |
| Grammar | withTablePrefix(Grammar $grammar) Установить префикс таблицы и вернуть синтаксический анализатор. | from Connection |
| static void | resolverFor(string $driver, Closure $callback) Зарегистрировать решатель подключений. | from Connection |
| static mixed | getResolver(string $driver) Получить решатель подключений для указанного драйвера. | from Connection |
| bool | isMaria() Определить, является ли подключенная база данных базой данных MariaDB. | |
| MySqlSchemaState | getSchemaState(Filesystem $files = null, callable $processFactory = null) Получить состояние схемы для подключения. | |
| Driver|MySqlDriver | getDoctrineDriver() Получить драйвер Doctrine DBAL. |
Подробности
protected bool causedByConcurrencyError(Throwable $e)
Определить, была ли данная исключительная ситуация вызвана ошибкой конкурентности, такой как тупик или сбой сериализации.
protected bool causedByLostConnection(Throwable $e)
Определить, была ли данная исключительная ситуация вызвана потерей подключения.
mixed transaction(Closure $callback, int $attempts = 1)
Выполнить замыкание в рамках транзакции.
protected void handleTransactionException(Throwable $e, int $currentAttempt, int $maxAttempts)
Обработать исключение, возникшее при выполнении транзакционного оператора.
void beginTransaction()
Начать новую базу данных транзакции.
protected void createTransaction()
Создать транзакцию в базе данных.
protected void createSavepoint()
Создать точку сохранения в базе данных.
protected void handleBeginTransactionException(Throwable $e)
Обработать исключение при начале транзакции.
void commit()
Зафиксировать активную базу данных транзакцию.
protected void handleCommitTransactionException(Throwable $e, int $currentAttempt, int $maxAttempts)
Обработать исключение, возникшее при фиксации транзакции.
void rollBack(int|null $toLevel = null)
Отменить активную базу данных транзакцию.
protected void performRollBack(int $toLevel)
Выполнить откат в базе данных.
protected void handleRollBackException(Throwable $e)
Обработать исключение при отмене.
int transactionLevel()
Получить количество активных транзакций.
void afterCommit(callable $callback)
Выполнить коллбэк после завершения транзакции.
void __construct(PDO|Closure $pdo, string $database = '', string $tablePrefix = '', array $config = [])
Создать новый экземпляр подключения к базе данных.
void useDefaultQueryGrammar()
Установить синтаксический анализатор запросов по умолчанию.
protected Grammar getDefaultQueryGrammar()
Получить экземпляр синтаксического анализатора запросов по умолчанию.
void useDefaultSchemaGrammar()
Установить синтаксический анализатор схемы по умолчанию.
protected Grammar getDefaultSchemaGrammar()
Получить экземпляр синтаксического анализатора схемы по умолчанию.
void useDefaultPostProcessor()
Установить обработчик запросов по умолчанию.
protected Processor getDefaultPostProcessor()
Получить экземпляр обработчика запросов по умолчанию.
Builder getSchemaBuilder()
Получить экземпляр генератора схемы для подключения.
Builder table(Closure|Builder|string $table, string|null $as = null)
Начать создание запроса к базе данных по таблице.
Builder query()
Получить новый экземпляр билдера запросов.
mixed selectOne(string $query, array $bindings = [], bool $useReadPdo = true)
Выполнить запрос select и вернуть единственный результат.
array selectFromWriteConnection(string $query, array $bindings = [])
Выполнить запрос select к базе данных.
array select(string $query, array $bindings = [], bool $useReadPdo = true)
Выполнить запрос select к базе данных.
Generator cursor(string $query, array $bindings = [], bool $useReadPdo = true)
Выполнить запрос select к базе данных и вернуть генератор.
protected PDOStatement prepared(PDOStatement $statement)
Настроить подготовленное утверждение PDO.
protected PDO getPdoForSelect(bool $useReadPdo = true)
Получить подключение PDO для запроса select.
bool insert(string $query, array $bindings = [])
Выполнить запрос insert в базу данных.
int update(string $query, array $bindings = [])
Выполнить запрос update в базе данных.
int delete(string $query, array $bindings = [])
Выполнить запрос delete в базе данных.
bool statement(string $query, array $bindings = [])
Выполнить SQL-запрос и вернуть булевый результат.
int affectingStatement(string $query, array $bindings = [])
Выполнить SQL-запрос и получить количество изменённых строк.
bool unprepared(string $query)
Выполнить неподготовленный сырой запрос к соединению PDO.
array pretend(Closure $callback)
Выполнить заданный обратный вызов в режиме «сухого прогона».
protected array withFreshQueryLog(Closure $callback)
Выполнить заданный обратный вызов в режиме «сухого прогона».
void bindValues(PDOStatement $statement, array $bindings)
Привязать значения к их параметрам в заданном утверждении.
array prepareBindings(array $bindings)
Подготовить привязки к запросу для выполнения.
protected mixed run(string $query, array $bindings, Closure $callback)
Выполнить SQL-запрос и записать контекст его выполнения.
protected mixed runQueryCallback(string $query, array $bindings, Closure $callback)
Выполнить SQL-запрос.
void logQuery(string $query, array $bindings, float|null $time = null)
Залогировать запрос в журнале запросов соединения.
protected float getElapsedTime(int $start)
Получить время, прошедшее с заданной точки отсчёта.
protected mixed handleQueryException(QueryException $e, string $query, array $bindings, Closure $callback)
Обработать исключение запроса.
protected mixed tryAgainIfCausedByLostConnection(QueryException $e, string $query, array $bindings, Closure $callback)
Обработать исключение запроса, возникшее во время выполнения запроса.
void reconnect()
Переподключиться к базе данных.
protected void reconnectIfMissingConnection()
Переподключиться к базе данных, если отсутствует подключение PDO.
void disconnect()
Отключиться от базового подключения PDO.
$this beforeExecuting(Closure $callback)
Зарегистрировать обработчик, который будет выполнен непосредственно перед выполнением запроса к базе данных.
void listen(Closure $callback)
Зарегистрировать слушателя запросов к базе данных с подключением.
protected array|null fireConnectionEvent(string $event)
Сгенерировать событие для этого подключения.
protected void event(mixed $event)
Сгенерировать заданное событие, если это возможно.
Expression raw(mixed $value)
Получить новое выражение SQL-запроса.
bool hasModifiedRecords()
Определить, изменялись ли записи в базе данных.
void recordsHaveBeenModified(bool $value = true)
Указать, изменялись ли какие-либо записи.
$this setRecordModificationState(bool $value)
Установить состояние изменения записей.
void forgetRecordModificationState()
Сбросить состояние изменения записей.
$this useWriteConnectionWhenReading(bool $value = true)
Указать, что подключение должно использовать запись PDO для чтений.
bool isDoctrineAvailable()
Доступен ли Doctrine?
Столбец getDoctrineColumn(string $table, string $column)
Получить экземпляр Doctrine Schema Column.
AbstractSchemaManager getDoctrineSchemaManager()
Получить менеджер схемы Doctrine DBAL для подключения.
Подключение getDoctrineConnection()
Получить экземпляр подключения к базе данных Doctrine DBAL.
void registerDoctrineType(string $class, string $name, string $type)
Зарегистрировать пользовательский тип отображения Doctrine.
PDO getPdo()
Получить текущее подключение PDO.
PDO|Closure|null getRawPdo()
Получить текущий параметр подключения PDO без выполнения логики повторного подключения.
PDO getReadPdo()
Получить текущее подключение PDO, используемое для чтения.
PDO|Closure|null getRawReadPdo()
Получить текущий параметр подключения PDO для чтения без выполнения логики повторного подключения.
$this setReconnector(callable $reconnector)
Установить экземпляр повторного подключения для подключения.
string|null getName()
Получить имя подключения к базе данных.
string|null getNameWithReadWriteType()
Получить полное имя подключения к базе данных.
mixed getConfig(string|null $option = null)
Получить параметр из конфигурации.
string getDriverName()
Получить имя драйвера PDO.
Grammar getQueryGrammar()
Получить используемую грамматику запросов к базе данных.
$this setQueryGrammar(Grammar $grammar)
Установить используемую грамматику запросов к базе данных.
Grammar getSchemaGrammar()
Получить используемую грамматику схемы базы данных.
$this setSchemaGrammar(Grammar $grammar)
Установить используемую грамматику схемы базы данных.
Processor getPostProcessor()
Получить обработчик результатов запросов к базе данных.
$this setPostProcessor(Processor $processor)
Установить обработчик запросов, используемый подключением.
Dispatcher getEventDispatcher()
Получить диспетчер событий, используемый подключением.
$this setEventDispatcher(Dispatcher $events)
Установить экземпляр диспетчера событий для подключения.
void unsetEventDispatcher()
Удалить диспетчер событий для этого подключения.
$this setTransactionManager(DatabaseTransactionsManager $manager)
Установить экземпляр менеджера транзакций для подключения.
void unsetTransactionManager()
Удалить менеджер транзакций для этого подключения.
bool pretending()
Определить, находится ли подключение в режиме "сухого запуска".
array getQueryLog()
Получить журнал запросов подключения.
void flushQueryLog()
Очистить журнал запросов.
void enableQueryLog()
Включить журнал запросов для подключения.
void disableQueryLog()
Отключить журнал запросов для подключения.
bool logging()
Определить, ведём ли мы протокол запросов.
string getDatabaseName()
Получить имя подключенной базы данных.
$this setDatabaseName(string $database)
Установить имя подключенной базы данных.
$this setReadWriteType(string|null $readWriteType)
Установить тип чтения/записи для подключения.
string getTablePrefix()
Получить префикс таблицы для подключения.
$this setTablePrefix(string $prefix)
Установить префикс таблицы, используемый подключением.
Grammar withTablePrefix(Grammar $grammar)
Установить префикс таблицы и вернуть синтаксический анализатор.
static void resolverFor(string $driver, Closure $callback)
Зарегистрировать решатель подключений.
static mixed getResolver(string $driver)
Получить решатель подключения для заданного драйвера.
bool isMaria()
Определить, является ли подключенная база данных базой данных MariaDB.
MySqlSchemaState getSchemaState(Filesystem $files = null, callable $processFactory = null)
Получить состояние схемы для подключения.
protected Driver|MySqlDriver getDoctrineDriver()
Получить драйвер Doctrine DBAL.
© Taylor Otwell
Licensed under the MIT License.
Laravel is a trademark of Taylor Otwell.
https://laravel.com/api/8.x/Illuminate/Database/MySqlConnection.html