SA-MP Forums Archive
Помогите! Проблема с MySQL на Linux. - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Русский/Russian (https://sampforum.blast.hk/forumdisplay.php?fid=32)
+---- Thread: Помогите! Проблема с MySQL на Linux. (/showthread.php?tid=487217)



Помогите! Проблема с MySQL на Linux. - Urukhay - 12.01.2014

Когда запускал на локалке(Windows), все работало как надо. Но когда поставил на хост на Linux, появилась проблема, что функция mysql_query не работает, а mysql_function_query работает нормально. Версия MySQL R34. В чем может быть проблема? Может каких-то файлов недоустановил?


Re: Помогите! Проблема с MySQL на Linux. - Stepashka - 12.01.2014

А что в логах пишет?


Re: Помогите! Проблема с MySQL на Linux. - Urukhay - 12.01.2014

Вот это место барахлит:
Код HTML:
[17:24:35] [DEBUG] mysql_query - connection: 1, query: "SELECT * FROM `Data` WHERE BINARY pName = 'Santiago'", use_cache: true
[17:24:35] [DEBUG] CMySQLQuery::CMySQLQuery() - constructor called
[17:24:35] [DEBUG] CMySQLQuery::Execute[()] - starting query execution
[17:24:35] [ERROR] CMySQLQuery::Execute[()] - (error #1146) Table 'ТУТ БД' doesn't exist
[17:24:35] [DEBUG] CMySQLQuery::~CMySQLQuery() - deconstructor called
[17:24:35] [DEBUG] cache_get_data - connection: 1
[17:24:35] [WARNING] cache_get_data - no active cache
[17:24:35] [DEBUG] cache_delete - cache_id: 0, connection: 1



Re: Помогите! Проблема с MySQL на Linux. - Stepashka - 12.01.2014

А ты пробовал перевести что он тебе пишет?


Re: Помогите! Проблема с MySQL на Linux. - Urukhay - 12.01.2014

Quote:
Originally Posted by Stepashka
Посмотреть сообщение
А ты пробовал перевести что он тебе пишет?
Давайте разберемся вместе!
Код HTML:
[ERROR] CMySQLQuery::Execute[()] - (error #1146) Table 'urukhaydb.PData' doesn't exist
Urukhaybd - название базы.
PData - название таблицы.
Ошибка при вызове функции mysql_query
Тип функции - извлечение данных.
Судя по ошибке, он не может найти таблицу. Но когда я работаю с этой же таблицей запросом mysql_function_query (UPDATE), то все нормально.


Re: Помогите! Проблема с MySQL на Linux. - Stepashka - 12.01.2014

Тут дословно написано "Таблица 'urukhaydb.PData' не существует" проверяй правильно ли прописаны имена.
Например запрос у тебя почему-то долбится в таблицу Data, а по твоим словам её зовут PData?!
И зачем тебе указывать имя базы? Сомневаюсь что ты работаешь более чем с одной.


PS имя таблицы просто ужасно!


Re: Помогите! Проблема с MySQL на Linux. - Urukhay - 12.01.2014

Quote:
Originally Posted by Stepashka
Посмотреть сообщение
Тут дословно написано "Таблица 'urukhaydb.PData' не существует" проверяй правильно ли прописаны имена.
Например запрос у тебя почему-то долбится в таблицу Data, а по твоим словам её зовут PData?!
И зачем тебе указывать имя базы? Сомневаюсь что ты работаешь более чем с одной.


PS имя таблицы просто ужасно!
Оригинальное имя PData, просто первый раз когда писал, думал не имеет значения. И вообще то я имя базы не указываю в запросе! Только при конекте! Я сам не знаю откуда это вылезло. Запрос просто нестандартный идет:
Код HTML:
mysql_format(connectid,query,256,SELECT * FROM pdata WHERE BINARY pName='%e',name);
mysql_query(connectid,query);
Хотя на запрос:
Код HTML:
mysql_function_query(connectid,"UPDATE pdata SET pName='lalala'",false,"","");
Он реагирует нормально. Таблица та же!


Re: Помогите! Проблема с MySQL на Linux. - Stepashka - 12.01.2014

Что за %e для вставки строки используется %s, а ещё кавычек не хватает.
У тебя в запросе UPDATE не указаны условия, обновляться будут все поля!


Re: Помогите! Проблема с MySQL на Linux. - Urukhay - 12.01.2014

Quote:
Originally Posted by Stepashka
Посмотреть сообщение
Что за %e для вставки строки используется %s, а ещё кавычек не хватает.
У тебя в запросе UPDATE не указаны условия, обновляться будут все поля!
Я для примера привел, знаю что все.
%e - это защита от лишних кавычек.
Вы по сути пишите.


Re: Помогите! Проблема с MySQL на Linux. - Stepashka - 12.01.2014

Quote:
Originally Posted by Urukhay
Посмотреть сообщение
Я для примера привел, знаю что все.
%e - это защита от лишних кавычек.
Вы по сути пишите.
Если ты и дальше продолжишь писать код "для примера", тут ни кто тебе не поможет! Если тебе нужна помощь - показывай реальный код.