SQLinfo.ru - Все о MySQL

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

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

Вы не зашли.

#1 18.08.2009 19:58:42

latgal
Участник
Откуда: Липецк
Зарегистрирован: 21.10.2008
Сообщений: 6

Один и тот же запрос работает по-разному на разных хостингах.

Ситуация:
PHP+MySQL. Запрос на выборку: 

SELECT lspt_clients.*, lspt_clservices.* FROM lspt_clients INNER JOIN lspt_clservices ON clid = cl_code WHERE (s_name LIKE '%value%' OR s_desc LIKE '%value%' OR cl_sname LIKE '%value%' OR cl_name LIKE '%value%' OR cl_sdesc LIKE '%value%' OR cl_fdesc LIKE '%value%') AND cl_status  = 'active'";


Поля clid, cl_status, cl_sname, cl_name, cl_sdesc, cl_fdesc из таблицы lspt_clients,
поля s_name, s_desc из таблицы lspt_clservices.

Так вот. На локальном хостинге всё хорошо работает. На удалённом сервере у хостера почему-то результаты выдаются только из lspt_clservices.

Чего не хватает?

Отредактированно latgal (18.08.2009 21:22:36)

Неактивен

 

#2 18.08.2009 20:33:07

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5842

Re: Один и тот же запрос работает по-разному на разных хостингах.

Не понял, что значит "результаты выдаются только из lspt_clservices."? В выдаче в полях, относящихся к spt_clients.*, пустые значения? Или что-то другое?

Если первое, то проверте данные в таблице lspt_clients.

Неактивен

 

#3 18.08.2009 20:56:01

latgal
Участник
Откуда: Липецк
Зарегистрирован: 21.10.2008
Сообщений: 6

Re: Один и тот же запрос работает по-разному на разных хостингах.

Это поисковик по сайту. Результаты миксуются. Просто по контрольным запросам видно, что значения из lspt_clservices ищутся, а из lspt_clients нет.

Неактивен

 

#4 18.08.2009 21:15:05

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

Re: Один и тот же запрос работает по-разному на разных хостингах.

Подозреваю, что в lspt_clients нет данных, которые бы удовлетворяли Вашему
запросу smile

Неактивен

 

#5 18.08.2009 21:21:18

latgal
Участник
Откуда: Липецк
Зарегистрирован: 21.10.2008
Сообщений: 6

Re: Один и тот же запрос работает по-разному на разных хостингах.

В том то и дело, что есть tongue Я же базу вижу и запрашиваю то, что там есть...

Неактивен

 

#6 18.08.2009 21:27:49

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5842

Re: Один и тот же запрос работает по-разному на разных хостингах.

Возможно на удаленном хостинге используется бинарное сопоставление. В этом случае поиск будет чувствителен к регистру.
Сравние show create table lspt_clients; на хостинге и локальной машине.

Неактивен

 

#7 18.08.2009 22:18:36

latgal
Участник
Откуда: Липецк
Зарегистрирован: 21.10.2008
Сообщений: 6

Re: Один и тот же запрос работает по-разному на разных хостингах.

СЕРВЕР:

CREATE TABLE `lspt_clients` (
  `clid` int(10) unsigned NOT NULL auto_increment,
  `cl_cat` enum('state','firm','group','private') NOT NULL default 'firm',
  `par_clid` int(10) unsigned NOT NULL default '0',
  `cl_sname` varchar(128) default NULL,
  `cl_name` varchar(255) default NULL,
  `logo_file` varchar(128) default NULL,
  `cl_region` varchar(64) default NULL,
  `cl_zip` mediumint(6) unsigned default NULL,
  `cl_town` varchar(32) default NULL,
  `cl_street` varchar(64) default NULL,
  `cl_bldng` varchar(16) default NULL,
  `cl_apt` varchar(32) default NULL,
  `cl_sdesc` varchar(256) NOT NULL,
  `cl_fdesc` text,
  `cl_notes` varchar(256) default NULL,
  `cl_status` enum('none','formoderate','active','blocked') NOT NULL default 'none',
  `tstamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
  PRIMARY KEY  (`clid`),
  KEY `cl_cat` (`cl_cat`),
  KEY `cl_sname` (`cl_sname`),
  KEY `cl_name` (`cl_name`),
  KEY `par_clid` (`par_clid`),
  KEY `cl_sdesc` (`cl_sdesc`),
  KEY `cl_fdesc` (`cl_fdesc`(333))
) ENGINE=MyISAM AUTO_INCREMENT=858 DEFAULT CHARSET=utf8 PACK_KEYS=1 CHECKSUM=1 COMMENT='Общий список клиентов'


LOCALHOST:
CREATE TABLE `lspt_clients` (
  `clid` int(10) unsigned NOT NULL auto_increment,
  `cl_cat` enum('state','firm','group','private') NOT NULL default 'firm',
  `par_clid` int(10) unsigned NOT NULL default '0',
  `cl_sname` varchar(128) NOT NULL,
  `cl_name` varchar(255) default NULL,
  `logo_file` varchar(128) default NULL,
  `cl_region` varchar(64) default NULL,
  `cl_zip` mediumint(6) unsigned default NULL,
  `cl_town` varchar(32) default NULL,
  `cl_street` varchar(128) default NULL,
  `cl_bldng` varchar(16) default NULL,
  `cl_apt` varchar(32) default NULL,
  `cl_sdesc` varchar(256) default NULL,
  `cl_fdesc` text,
  `cl_notes` varchar(256) default NULL,
  `cl_status` enum('none','formoderate','active','blocked') NOT NULL default 'active',
  `tstamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
  PRIMARY KEY  (`clid`),
  KEY `par_clid` (`par_clid`),
  KEY `cl_cat` (`cl_cat`),
  KEY `cl_sname` (`cl_sname`),
  KEY `cl_name` (`cl_name`),
  KEY `cl_sdesc` (`cl_sdesc`),
  KEY `cl_fdesc` (`cl_fdesc`(333))
) ENGINE=MyISAM AUTO_INCREMENT=345 DEFAULT CHARSET=utf8 PACK_KEYS=1 CHECKSUM=1 COMMENT='Общий список клиентов'


По-моему всё одинаково...
Да я и с разными регистрами пробовал.

Отредактированно latgal (18.08.2009 22:19:33)

Неактивен

 

#8 19.08.2009 01:24:54

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

Re: Один и тот же запрос работает по-разному на разных хостингах.

А пробовали искать простым выражением каким-нибудь? С одним like
над одной табличкой.

Неактивен

 

Board footer

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