Помогите! Проблема с MySQL на Linux.
#1

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

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

Вот это место барахлит:
Код 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
Reply
#4

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

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), то все нормально.
Reply
#6

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


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

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,"","");
Он реагирует нормально. Таблица та же!
Reply
#8

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

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

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


Forum Jump:


Users browsing this thread: 2 Guest(s)