Проблема с запросом или с базой

silent9

Новичок
Проблема с запросом или с базой

подсоединяюсь к базе shtrihto_2gis, выполняю запрос (с пробелами все ок)

mysql> select cid, rpad(hp(cid,0),length(hp(cid,0))-1,'/') as hp, parentid from shtrihto_rupages_categories;
ERROR 1305 (42000): FUNCTION shtrihto_2gis.hp does not exist

подсоединяюсь к базе shtrihto
mysql> select cid, rpad(hp(cid,0),length(hp(cid,0))-1,'/') as hp, parentid from shtrihto_rupages_categories;
выдает инфу из базы

в чем может быть проблема? базы одинаковые только с разными названиями, запрос тоже один и тотже...
 

silent9

Новичок
функцию нашел, но теперь появилась проблема добавить ее во вторую таблицу)

SHOW CREATE FUNCTION shtrihto.hp

Function 'hp'

CREATE DEFINER=`useradm`@`localhost` FUNCTION `hp`(ID INTEGER, ID_EDIT INTEGER)
RETURNS text CHARSET latin1
BEGIN
DECLARE PATH TEXT;
DECLARE P_PID INTEGER;
DECLARE FLAG INT;
DECLARE NAME VARCHAR(64);
SET FLAG=0;
SET PATH = '';
WHILE ID<>0 DO IF ID=ID_EDIT THEN SET FLAG=1;
END IF;
SELECT parentid, title INTO P_PID, NAME FROM shtrihto_rupages_categories WHERE cid=ID limit 1;
IF ID=P_PID THEN SET ID=0;
ELSE SET ID=P_PID;
SET PATH=CONCAT(NAME, "/" , PATH);
END IF;
END WHILE;
IF FLAG=1 THEN SET PATH="";
END IF;
RETURN PATH;
END

как эту функцию добавить в shtrihto_2gis?
 

silent9

Новичок
в том то и дело что не получается создать тем что вывело SHOW CREATE FUNCTION, ошибку в запросе выдает
 

silent9

Новичок
http://web-silent.ru/error2.gif


CREATE DEFINER=`useradm`@`localhost` FUNCTION `hp`(ID INTEGER, ID_EDIT INTEGER)
RETURNS text CHARSET latin1
BEGIN
DECLARE PATH TEXT
DECLARE P_PID INTEGER
DECLARE FLAG INT
DECLARE NAME VARCHAR(64)
SET FLAG=0
SET PATH = ''
WHILE ID<>0 DO IF ID=ID_EDIT THEN SET FLAG=1
END IF
SELECT parentid, title INTO P_PID, NAME FROM shtrihto_rupages_categories WHERE cid=ID limit 1
IF ID=P_PID THEN SET ID=0
ELSE SET ID=P_PID
SET PATH=CONCAT(NAME, "/" , PATH)
END IF
END WHILE
IF FLAG=1 THEN SET PATH=""
END IF
RETURN PATH
END
 
Сверху