интересуют отзывы тех кто работал с такой связкой.
в частности, интересует следующий вопрос:
в виду того, что в oracle нет автоинкремента и вместо него используют SEQUENCE, есть ли какие-то тонкости/нюансы при работе с CActiveRecord?
нужно ли вручную устанавливать id при insert? или CActiveRecord это автоматом реализует?
поделитесь опытом, плиз...
yii + oracle
- sluchainiyznak
- Сообщения: 617
- Зарегистрирован: 2013.05.19, 17:51
- Откуда: ХМАО-Югра, г. Сургут
- Контактная информация:
Re: yii + oracle
У меня id вставляется по триггеру в самой БД
Re: yii + oracle
как реализовывали limit?
у меня ни
$criteria->limit = $limit;
ни
$criteria->condition = 'ROWNUM <='.$limit;
не срабатывают
у меня ни
$criteria->limit = $limit;
ни
$criteria->condition = 'ROWNUM <='.$limit;
не срабатывают
Re: yii + oracle
люди, помогите, плиз, консультацией.
у кого реально работает связка Yii+PHP+Apache+Oracle на линуксовой машине?
ни у меня, ни у админов клиента не получилось собрать работоспособную связку.
на тестовой площадке под winXP все работает. а под линуксом - никак.
т.е. pdo вроде бы как собирается, в phpinfo все отображается, однако самые простые запросы валятся с ошибкой типа:
или
у кого реально работает связка Yii+PHP+Apache+Oracle на линуксовой машине?
ни у меня, ни у админов клиента не получилось собрать работоспособную связку.
на тестовой площадке под winXP все работает. а под линуксом - никак.
т.е. pdo вроде бы как собирается, в phpinfo все отображается, однако самые простые запросы валятся с ошибкой типа:
Код: Выделить всё
CDbCommand не удалось исполнить SQL-запрос: SQLSTATE[HY000]: General error: 1405 OCIStmtFetch: ORA-01405: fetched column value is NULL
(/root/PDO_OCI-1.0/oci_statement.c:446). The SQL statement executed was: WITH USER_SQL AS (SELECT * FROM "WCULTURE_OBJECTS" "t" WHERE WCOB_NNN IN (:ycp2, :ycp3, :ycp4, :ycp5, :ycp6)),
PAGINATION AS (SELECT USER_SQL.*, rownum as rowNumId FROM USER_SQL)
SELECT *
FROM PAGINATION
WHERE rownum <= 4. Bound with :ycp2='19', :ycp3='17', :ycp4='18', :ycp5='16', :ycp6='15'
Код: Выделить всё
CDbCommand не удалось исполнить SQL-запрос: SQLSTATE[HY000]: General error: 1405 OCIStmtFetch: ORA-01405: fetched column value is NULL
(/root/PDO_OCI-1.0/oci_statement.c:446). The SQL statement executed was: WITH USER_SQL AS (SELECT * FROM "WCULTURE_OBJECTS" "t" WHERE "t"."WCOB_NNN"=20),
PAGINATION AS (SELECT USER_SQL.*, rownum as rowNumId FROM USER_SQL)
SELECT *
FROM PAGINATION
WHERE rownum <= 1
Re: yii + oracle
Hi,
Try using nvl function in oracle. For model that contain clob column. Using sql data provider instead.
For example. Using data provider in yii2 in controller action index
Try using nvl function in oracle. For model that contain clob column. Using sql data provider instead.
For example. Using data provider in yii2 in controller action index
Код: Выделить всё
$count = Yii::$app->db->createCommand('
SELECT COUNT(*) FROM POST
')->queryScalar();
$dataProvider = new SqlDataProvider([
'sql' => "SELECT ID, NVL(TEXT_WITH_CLOB, 'None') FROM POST",
'key' => 'ID',
'totalCount' => $count,
'sort' => [
'attributes' => [
'ID',
'TEXT_WITH_CLOB',
],
],
'pagination' => [
'pageSize' => 20,
],
]);
return $this->render('index', [
'dataProvider' => $dataProvider,
]);