Можно ли вызвать функции работы с конкретно БД (например pg_copy_from) ?

Общие вопросы по использованию второй версии фреймворка. Если не знаете как что-то сделать и это про Yii 2, вам сюда.
Ответить
i-programmer
Сообщения: 101
Зарегистрирован: 2015.08.24, 18:50

Можно ли вызвать функции работы с конкретно БД (например pg_copy_from) ?

Сообщение i-programmer »

Есть функция работы с постгресом: pg_copy_from.

Сейчас я делаю всё, как в документации PHP:

Код: Выделить всё

$db = pg_connect("host=localhost user=user password=123 dbname=test") or die("Could not connect");
$result = pg_copy_from($db, 'public.my_table (id, test_id,lock_name,func_type)', $data, ',');
Можно ли как-то эту функцию вызвать средствами фреймворка, чтобы было примерно так:

Код: Выделить всё

Yii::$app->db->createCommand("pg_copy_from('public.my_table (id, test_id,lock_name,func_type)')")->execute($data);
Аватара пользователя
SiZE
Сообщения: 2813
Зарегистрирован: 2011.09.21, 12:39
Откуда: Perm
Контактная информация:

Re: Можно ли вызвать функции работы с конкретно БД (например pg_copy_from) ?

Сообщение SiZE »

pg_copy_from - это функция языка PHP, конечно же использовать её в SQL запросе нельзя.

Для PDO есть альтернативный метод https://www.php.net/manual/en/pdo.pgsql ... marray.php

Вроде бы должно как-то так сработать

Yii::$app->db->pdo->pgsqlCopyFromArray(...)
i-programmer
Сообщения: 101
Зарегистрирован: 2015.08.24, 18:50

Re: Можно ли вызвать функции работы с конкретно БД (например pg_copy_from) ?

Сообщение i-programmer »

SiZE писал(а): 2022.05.23, 09:38 Вроде бы должно как-то так сработать

Yii::$app->db->pdo->pgsqlCopyFromArray(...)
да, тоже это смог найти)) спасибо)
Ответить