Задавайте вопросы, мы ответим
Вы не зашли.
Страниц: 1
Помогите пожалуйста возникла ошибка: CDbCommand не удалось исполнить SQL-запрос: SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'lock, count(lock) as sum from tbl_products_values v LEFT JOIN tbl_catalog_relati' at line 1
В чем может быть проблема?
Комментарий модератора
Что делать в случае возникновения ошибки "CDbCommand не удалось исполнить SQL-запрос: SQLSTATE[42000]: Syntax error or access violation" смотрите в статье 1064 You have an error in your SQL syntax
Неактивен
Синтаксическая ошибка в запросе перед приведенным фрагментом. Покажите полностью запрос.
Неактивен
vasya написал:
Синтаксическая ошибка в запросе перед приведенным фрагментом. Покажите полностью запрос.
Я новичок что именно показать?
Неактивен
SQL-запрос, который не удалось исполнить.
'lock, count(lock) as sum from tbl_products_values v LEFT JOIN tbl_catalog_relati' это лишь часть запроса.
Найдите в скриптах место где выполняется запрос и добавьте его вывод на экран в случае ошибки исполнения.
Неактивен
<?php
if($this->beginCache('template_menu'.$_GET['parentsection'].$_GET['section'])) {
//
foreach ($cat0 as $cat) {
$cat1 = Catalog::model()->findAllByAttributes(array('pid'=>$cat->id));
$li = '';
if ($cat1) {
$cur = 0;
$end = end($cat1);
foreach ($cat1 as $c1) {
if ($_GET['section']==$c1->url) {
$li .= '<li class="cur'.(($end==$c1)?' end':'').'"><span>'.$c1->name.'</span></li>';
$cur++;
} else {
$li .= '<li'.(($end==$c1)?' class="end"':'').'><a href="'.$this->createUrl("/showcase/list",array('parentsection'=>$c1->parent->url,'section'=>$c1->url)).'">'.$c1->name.'</a></li>';
}
}
}
echo '<li class="cat-type on-padding"><span><a href="'.$this->createUrl("/showcase/list",array('section'=>$cat->url)).'">'.$cat->name.'</a></span>'.(($li)?'<ul'.(($cur||$_GET['section']==$cat->url)?' style="display: block;"':'').'>'.$li.'</ul>':'').'</li>';
}
//
$this->endCache(); }
$pages = Page::model()->catalogmenu()->posasc()->findAll();
$pages_arr = array();
foreach ($pages as $mpage) {
$parent=0;
$li = '';
if ($mpage->url==$_GET['url']) $parent++;
foreach ($mpage->childs as $child) {
if ($child->url==$_GET['url']) {
$parent++;
$li .= '<li class="cur"><a href="'.$this->createUrl('/page/content', array('url'=>$child->url)).'">'.$child->title.'</a></li>';
} else
$li .= '<li><a href="'.$this->createUrl('/page/content', array('url'=>$child->url)).'">'.$child->title.'</a></li>';
}
?>
<li class="title">
<span><?php echo $mpage->title; ?></span>
<ul<?php
//if (!$parent) echo ' style="display:none;"';
?>>
<?php echo $li; ?>
</ul>
</li>
<?php
Неактивен
Это не тот скрипт/фрагмент...
Неактивен
$filter = array();
$ProductField=ProductField::model()->forOwner()->sort()->findAll();
if ($ProductField) {
foreach($ProductField as $field) {
$sql = 'select '.$field->varname.', count('.$field->varname.') as sum from {{products_values}} v'
.' LEFT JOIN {{catalog_relation}} r ON (v.pr_id=r.pr_id)'
.(($catalog->id)?'where cid = '.$catalog->id:'')
.' GROUP BY '.$field->varname.'';
$row = Yii::app()->db->createCommand($sql)->queryAll();
$filter[$field->varname] = $row;
}
Неактивен
lock - ключевое слово. При использовании в качестве имени столбца его нужно брать в обратные кавычки, т.е.
select `lock`, count(`lock`) as sum from ...
или переименовать колонку.
Неактивен
vasya написал:
lock - ключевое слово. При использовании в качестве имени столбца его нужно брать в обратные кавычки, т.е.
select `lock`, count(`lock`) as sum from ...
или переименовать колонку.
Спасибо ошибку исправил.
Неактивен
Натыкался сам на эту же граблю - советую вообще не использовать зарегистрированных слов:
например - lok вместо lock.
Неактивен
Приветствую!
Переносил на сервер сайт, сделанный на Yupe CMS (на основе Yii), залил файлы сайта, дамп БД, в итоге на некоторых страницах появляется такая ошибка:
CDbCommand не удалось исполнить SQL-запрос: SQLSTATE[42000]: Syntax error or access violation: 1055 Expression #33 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'tdtali_2.categoryRelation.id' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by
страницы:
http://test.tdtali.ru/store/elektricheskie/skrepernye
http://test.tdtali.ru/site/lebedkiprice
и т.д.
Отредактированно Ramapriya (27.02.2017 13:55:45)
Неактивен
Судя по тексту ошибки, MySQL-сервер на новой машинке настроен иначе, чем на старой.
https://dev.mysql.com/doc/refman/5.7/en … l_group_by
Для диагностики - сравните значение sql-запроса
SELECT @@sql_mode;
на старой машинке и на новой и напишите сюда оба значения.
Неактивен
Страниц: 1