SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 24.06.2010 15:34:00

BadCat
Участник
Зарегистрирован: 24.06.2010
Сообщений: 2

Ошибка в MySQL

Приветствую всех форумчан.Народ помогите решить проблему;
Database error in vBulletin 3.8.4:

Invalid SQL:

        SELECT attachmentid, attachment.userid, filename, size , attachment.dateline, attachment.postid, seeders, leechers, completed, post.threadid, post.title, user.username, user.userid
        FROM vt_attachment
        LEFT JOIN vt_post ON post.postid = attachment.postid
        LEFT JOIN vt_user ON user.userid = attachment.userid
        WHERE info_hash != ''
        ORDER BY   dateline desc
        LIMIT 0, 30;

MySQL Error   : Unknown column 'attachment.userid' in 'field list'
Error Number  : 1054

Посоветовали этот вариант но не сработал

SELECT attachmentid, attachment.userid, таблица.filename, таблица.size , attachment.dateline, attachment.postid, таблица.seeders, таблица.leechers, таблица.completed, post.threadid, post.title, user.username, user.userid
FROM " . TABLE_PREFIX . "attachment as attachment
LEFT JOIN " . TABLE_PREFIX . "post as post ON post.postid = attachment.postid
LEFT JOIN " . TABLE_PREFIX . "user as user ON user.userid = attachment.userid 

Получил ошибку:
#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 '" . TABLE_PREFIX . "attachment as attachment LEFT JOIN " . TABLE_PREFIX . "post ' at line 2

Нашел вот ваш форум и надеюсь,что спецы по MySQL помогут решить проблему.Заранее спасибо.
Зы.Если есть материал по этой теме,ткните носом.

Отредактированно BadCat (24.06.2010 15:41:02)

Неактивен

 

#2 24.06.2010 16:44:43

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: Ошибка в MySQL

Очень странная ошибка. vbulletin, вроде, не страдает проблемами DLE. Расширение
какое-то битое?

Посоветовали Вам практически правильно. У Вас таблички называются vt_{названиетаблицы}.
А в запросе это почти учитывается. Т.е. правильно должно быть написано не
attachment.userid, а vt_attachment.userid. И т.д. для всех остальных вхождений
названия таблиц. То же самое для vt_post, vt_user. Т.е. в любом случае нужно
править код. А лучше (если это новое расширение) — выкинуть его на помойку
сразу: такой код поддерживать замучаетесь. Получите что-то типа DLE не работа-
ющее совсем.

Неактивен

 

#3 24.06.2010 17:28:18

BadCat
Участник
Зарегистрирован: 24.06.2010
Сообщений: 2

Re: Ошибка в MySQL

Спасибо за оперативный ответ.Все правильно, оказалось,что к префиксу таблиц торрента добавился префикс vBulletin  (vt)_xbt_(таблица) и соответственно ошибка при обращении.Вроде как лечится удалением префиксов.Сейчас проверим.

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson