Mysql 1305 ошибка

Используется
МySql — 5,7 x64

Имеется две таблицы

-- Дамп структуры для таблица 01tst.tst_003_tb_01_calcul
CREATE TABLE IF NOT EXISTS `tst_003_tb_01_calcul` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `pol_1` char(50) DEFAULT NULL,
  `idsub` int(11) DEFAULT NULL,
  `pol_3` int(11) DEFAULT NULL,
  `pol_scepka` text,
  UNIQUE KEY `id` (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=8 DEFAULT CHARSET=utf8;

-- Дамп данных таблицы 01tst.tst_003_tb_01_calcul: ~3 rows (приблизительно)
/*!40000 ALTER TABLE `tst_003_tb_01_calcul` DISABLE KEYS */;
INSERT INTO `tst_003_tb_01_calcul` (`id`, `pol_1`, `idsub`, `pol_3`, `pol_scepka`) VALUES
    (1, 'dog 1', 1, 1, '< ТЕКСТ _ ЗАПИСИ pol_4_zp 1>  , < ТЕКСТ _ ЗАПИСИ pol_4_zp 2>  , < ТЕКСТ _ ЗАПИСИ pol_4_zp 3> '),
    (4, 'dog 2', 2, 1, '< ТЕКСТ _ ЗАПИСИ pol_4_zp 4>  , < ТЕКСТ _ ЗАПИСИ pol_4_zp 5>  , < ТЕКСТ _ ЗАПИСИ pol_4_zp 6>  '),
    (7, 'dog 3', 3, 1, '< ТЕКСТ _ ЗАПИСИ pol_4_zp 7>  , < ТЕКСТ _ ЗАПИСИ pol_4_zp 8>  , < ТЕКСТ _ ЗАПИСИ pol_4_zp 9>');
/*!40000 ALTER TABLE `tst_003_tb_01_calcul` ENABLE KEYS */;

-- Дамп структуры для таблица 01tst.tst_003_tb_02_calcul
CREATE TABLE IF NOT EXISTS `tst_003_tb_02_calcul` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `pol_1` char(50) DEFAULT NULL,
  `idsub` int(11) DEFAULT NULL,
  `pol_3` int(11) DEFAULT NULL,
  `pol_4` text,
  UNIQUE KEY `id` (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=10 DEFAULT CHARSET=utf8;

-- Дамп данных таблицы 01tst.tst_003_tb_02_calcul: ~9 rows (приблизительно)
/*!40000 ALTER TABLE `tst_003_tb_02_calcul` DISABLE KEYS */;
INSERT INTO `tst_003_tb_02_calcul` (`id`, `pol_1`, `idsub`, `pol_3`, `pol_4`) VALUES
    (1, 'dog 1', 1, 1, 'ТЕКСТ _ ЗАПИСИ pol_4_zp 1'),
    (2, 'dog 1', 1, 2, 'ТЕКСТ _ ЗАПИСИ pol_4_zp 2'),
    (3, 'dog 1', 1, 3, 'ТЕКСТ _ ЗАПИСИ pol_4_zp 3'),
    (4, 'dog 2', 2, 1, 'ТЕКСТ _ ЗАПИСИ pol_4_zp 4'),
    (5, 'dog 2', 2, 2, 'ТЕКСТ _ ЗАПИСИ pol_4_zp 5'),
    (6, 'dog 2', 2, 3, 'ТЕКСТ _ ЗАПИСИ pol_4_zp 6'),
    (7, 'dog 3', 3, 1, 'ТЕКСТ _ ЗАПИСИ pol_4_zp 7'),
    (8, 'dog 3', 3, 2, 'ТЕКСТ _ ЗАПИСИ pol_4_zp 8'),
    (9, 'dog 3', 3, 3, 'ТЕКСТ _ ЗАПИСИ pol_4_zp 9');
/*!40000 ALTER TABLE `tst_003_tb_02_calcul` ENABLE KEYS */;

Запрос для группировки из приведённых выше таблиц в одну

select t01.idsub, t01.pol_1, GROUP_CONCAT(t02.pol_4) AS scepk 
from tst_003_tb_01_calcul t01 
inner join tst_003_tb_02_calcul t02  
    ON t02.idsub = t01.idsub 
group by t01.idsub

При запуске запроса появляется ошибка:
«Error Code: 1305. FUNCTION 01tst. GROUP_CONCAT does not exist»

Вопрос
Как избавится от ошибки?

Скрин
введите сюда описание изображения

I’m getting

Error Code: 1305. FUNCTION acdb_extended.player does not exist

When I attempt to call a stored procedure. The odd thing about the error is that «player» isn’t the name of the stored procedure.

Here’s the stored procedure code, there is probably a number of things wrong with it but it’s correct as far as I can tell:

CREATE PROCEDURE `acdb_extended`.`addAllianceMember` (IN accountNumber VARCHAR(255),
    IN userName VARCHAR(255), IN serverInitial CHAR(1), IN galaxy TINYINT(2),
    IN region TINYINT(2), IN system TINYINT(2), IN astro TINYINT(2), IN level TINYINT(2))
BEGIN
    IF player (account_number) = accountNumber
    THEN REPLACE INTO player (username)
        VALUES (userName);
    ELSE INSERT INTO player (account_number, username)
        VALUES (accountNumber, userName);
    END IF;

    IF coordinates (server_initial) = serverInitial AND
        coordinates (galaxy) = galaxy AND
        coordinates (region) = region AND
        coordinates (system) = system AND
        coordinates (astro) = astro
    THEN REPLACE INTO coordinates (player_ID)
        VALUES ((SELECT player_ID FROM player WHERE username = userName));
    ELSE INSERT INTO coordinates (player_ID, server_initial, galaxy, region, system, astro)
        VALUES ((SELECT player_ID FROM player WHERE username = userName), serverInitial,
            galaxy, region, system, astro);
    END IF;

    IF jumpgate (player_ID) = (SELECT player_ID FROM player WHERE username = userName) AND
            jumpgate (coordinates_ID) = (SELECT c.coordinates_ID FROM coordinates c, player p WHERE c.player_ID = p.player_ID
            AND p.username = userName)
    THEN REPLACE INTO jumpgate (level)
            VALUES (level);
    ELSE INSERT INTO jumpgate (player_ID, coordinates_ID, level, usable)
            VALUES ((SELECT player_ID FROM player WHERE username = userName),
                (SELECT c.coordinates_ID FROM coordinates c, player p WHERE c.player_ID = p.player_ID
                AND p.username = userName), level, TRUE);
    END IF;
END

And here is the SQL statement I’m using to test it:

CALL addAllianceMember(8494618, 'Carl', 'G', 29, 08, 10, 01, 04);

Any hints on where this is going wrong?

Страниц: 1

  • Список
  •  » Раздел для начинающих
  •  » INFO: MYSQL ERROR 1305: FUNCTION luigi_rich.TO_SECONDS does not exist

#1 19.03.2017 14:11:40

JamesCaeser
Участник
Зарегистрирован: 19.03.2017
Сообщений: 5

INFO: MYSQL ERROR 1305: FUNCTION luigi_rich.TO_SECONDS does not exist

Помогите, что делать?
Постоянно выпадает ошибка — INFO: MYSQL ERROR 1305: FUNCTION luigi_rich.TO_SECONDS does not exist
Я не понимаю где найти и как исправить эту ошибку, кто может подсказать что делать? Пожалуйста!

Неактивен

#2 19.03.2017 14:30:17

rgbeast
Администратор
MySQL Authorized Developer and DBA
Откуда: Москва
Зарегистрирован: 21.01.2007
Сообщений: 3876

Re: INFO: MYSQL ERROR 1305: FUNCTION luigi_rich.TO_SECONDS does not exist

В базе данных luigi_rich должна быть хранимая функция TO_SECONDS, но ее нет. Возможно, забыли перенести при переезде.

Неактивен

#3 19.03.2017 15:32:24

JamesCaeser
Участник
Зарегистрирован: 19.03.2017
Сообщений: 5

Re: INFO: MYSQL ERROR 1305: FUNCTION luigi_rich.TO_SECONDS does not exist

А куда вставить этот to_seconds чтобы все заработало? Никак понять не могу.

Неактивен

#4 19.03.2017 15:36:50

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

Re: INFO: MYSQL ERROR 1305: FUNCTION luigi_rich.TO_SECONDS does not exist

TO_SECONDS(expr) это стандартная
вероятно у вас в запросе есть пробел перед открывающей скобкой.

Неактивен

#5 19.03.2017 16:29:02

JamesCaeser
Участник
Зарегистрирован: 19.03.2017
Сообщений: 5

Re: INFO: MYSQL ERROR 1305: FUNCTION luigi_rich.TO_SECONDS does not exist

А где найти эту строку? Все перерыл, нигде нету, ни в БД, ни в других файлах.

Неактивен

#6 19.03.2017 16:33:39

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

Re: INFO: MYSQL ERROR 1305: FUNCTION luigi_rich.TO_SECONDS does not exist

а где у вас возникает ошибка? это работа сайта, перенос данных, выполнение запроса в клиенте?

Неактивен

#7 19.03.2017 16:46:16

rgbeast
Администратор
MySQL Authorized Developer and DBA
Откуда: Москва
Зарегистрирован: 21.01.2007
Сообщений: 3876

Re: INFO: MYSQL ERROR 1305: FUNCTION luigi_rich.TO_SECONDS does not exist

Какая у Вас версия MySQL?

TO_SECONDS() is available beginning with MySQL 5.5.0.

Неактивен

#8 19.03.2017 16:55:31

JamesCaeser
Участник
Зарегистрирован: 19.03.2017
Сообщений: 5

Re: INFO: MYSQL ERROR 1305: FUNCTION luigi_rich.TO_SECONDS does not exist

Данная ошибка возникает при запуске сервера в MTA, какая версия, я сам точно не знаю, вроде 5.6, но это не точно, можно где-то узнать?

Неактивен

#9 20.03.2017 11:45:12

deadka
Администратор
Зарегистрирован: 14.11.2007
Сообщений: 2415

Re: INFO: MYSQL ERROR 1305: FUNCTION luigi_rich.TO_SECONDS does not exist

Узнать можно с помощью запроса

select version();

в консоли mysql или phpmyadmin, если у Вас такой установлен.


Зеленый свет для слабаков, долги отдают только трусы, тру гики работают только в консоли…

Неактивен

#10 20.03.2017 19:29:41

JamesCaeser
Участник
Зарегистрирован: 19.03.2017
Сообщений: 5

Re: INFO: MYSQL ERROR 1305: FUNCTION luigi_rich.TO_SECONDS does not exist

Вроде вот — 5.6.21, это сможет как-то помочь вам?

Неактивен

#11 20.03.2017 19:51:26

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

Re: INFO: MYSQL ERROR 1305: FUNCTION luigi_rich.TO_SECONDS does not exist

значит проблема в том, что перед скобкой стоит лишний символ (пробел или перенос строки, или …)
где это искать в МТА лучше спрашивать на соответствующем профильном ресурсе
как правило, такие ошибки следствие установки «левого» плагина/мода

Неактивен

Страниц: 1

  • Список
  •  » Раздел для начинающих
  •  » INFO: MYSQL ERROR 1305: FUNCTION luigi_rich.TO_SECONDS does not exist

#1305 – PROCEDURE does not exist в MySQL: причины и способы решения

MySQL – одна из самых популярных систем управления базами данных, основанная на языке SQL. Она широко используется в веб-разработке для создания и управления базами данных различных проектов. Однако, даже опытным разработчикам иногда приходится столкнуться с ошибкой #1305 – PROCEDURE does not exist в MySQL. В этой статье мы разберемся в причинах возникновения этой ошибки и способах ее решения.

В чем заключается ошибка #1305 – PROCEDURE does not exist в MySQL?

Ошибка #1305 в MySQL возникает в том случае, когда процедура, которую вы пытаетесь вызвать, не существует в базе данных. В большинстве случаев это связано с неправильно указанным именем процедуры. Также, данная ошибка может возникнуть при попытке вызова процедуры, которая была удалена из базы данных.

Способы исправления ошибки #1305 – PROCEDURE does not exist в MySQL

1. Проверьте правильность имени процедуры

Первым шагом при возникновении ошибки #1305 следует проверить правильность указания имени процедуры при ее вызове. Убедитесь, что имя процедуры не содержит опечаток и соответствует имени, которое было задано при создании процедуры в базе данных. Для этого можно воспользоваться инструментами MySQL, например, командой SHOW PROCEDURE STATUS.

2. Проверьте наличие процедуры в базе данных

В случае, если имя процедуры указано правильно, но ошибка все равно возникает, следует проверить наличие процедуры в базе данных. Возможно, она была удалена или не была создана вовсе. Для этого можно воспользоваться командой SHOW PROCEDURE STATUS и убедиться, что нужная процедура имеется в списке.

3. Проверьте наличие привилегий

Если проверка наличия процедуры в базе данных не дала результатов, то следует убедиться, что у пользователя, вызывающего процедуру, имеются достаточные привилегии для ее выполнения. Для этого нужно проверить список привилегий пользователя, который можно получить командой SHOW GRANTS.

4. Проверьте настройки базы данных

Если ни одно из вышеуказанных решений не дало результатов, то нужно проверить настройки базы данных. Возможно, произошли изменения в системе, которые повлияли на работу MySQL. Для этого можно воспользоваться командой SHOW VARIABLES и убедиться, что все настройки соответствуют требованиям MySQL.

В заключение

Ошибка #1305 – PROCEDURE does not exist в MySQL может возникнуть по многим причинам. Как показывает практика, большинство проблем возникают вследствие неправильного указания имени процедуры. Тем не менее, в некоторых случаях причина ошибки может быть значительно сложнее. При возникновении данной ошибки следует выполнять описанные выше действия и при необходимости обратиться за помощью к специалистам в области MySQL.

I have a problem. I created a function in MySQL which returns a String (varchar data type).

Here’s the syntax:

DELIMITER $$
USE `inv_sbmanis`$$
DROP FUNCTION IF EXISTS `SafetyStockChecker`$$

CREATE DEFINER=`root`@`localhost` FUNCTION `SafetyStockChecker`
(jumlah INT, safetystock INT)   
RETURNS VARCHAR(10) CHARSET latin1
BEGIN
DECLARE statbarang VARCHAR(10);
IF jumlah > safetystock THEN SET statbarang = "Stabil";
ELSEIF jumlah = safetystock THEN SET statbarang = "Perhatian";
ELSE SET statbarang = "Kritis";
END IF;
RETURN (statbarang);
END$$
DELIMITER ;

When I call the function like call SafetyStockChecker(16,16), I get this error:

Query : call SafetyStockChecker(16,16)
Error Code : 1305
PROCEDURE inv_sbmanis.SafetyStockChecker does not exist
Execution Time : 00:00:00:000
Transfer Time : 00:00:00:000
Total Time : 00:00:00:000

What’s wrong with the function?

ZygD's user avatar

ZygD

20.6k39 gold badges75 silver badges96 bronze badges

asked Apr 18, 2013 at 8:24

randytan's user avatar

That is not the correct way to call a function. Here’s an example to call a function:

SELECT SafetyStockChecker(16,16) FROM TableName

The way you are doing now is for calling a STORED PROCEDURE. That is why the error says:

PROCEDURE inv_sbmanis.SafetyStockChecker does not exist

because it is searching for a Stored procedure and not a function.

answered Apr 18, 2013 at 8:26

John Woo's user avatar

John WooJohn Woo

255k69 gold badges492 silver badges488 bronze badges

0

You should use

SELECT SafetyStockChecker(16,16)

answered Apr 18, 2013 at 8:36

Amit Garg's user avatar

Amit GargAmit Garg

3,8271 gold badge29 silver badges35 bronze badges

0

I have a problem. I created a function in MySQL which returns a String (varchar data type).

Here’s the syntax:

DELIMITER $$
USE `inv_sbmanis`$$
DROP FUNCTION IF EXISTS `SafetyStockChecker`$$

CREATE DEFINER=`root`@`localhost` FUNCTION `SafetyStockChecker`
(jumlah INT, safetystock INT)   
RETURNS VARCHAR(10) CHARSET latin1
BEGIN
DECLARE statbarang VARCHAR(10);
IF jumlah > safetystock THEN SET statbarang = "Stabil";
ELSEIF jumlah = safetystock THEN SET statbarang = "Perhatian";
ELSE SET statbarang = "Kritis";
END IF;
RETURN (statbarang);
END$$
DELIMITER ;

When I call the function like call SafetyStockChecker(16,16), I get this error:

Query : call SafetyStockChecker(16,16)
Error Code : 1305
PROCEDURE inv_sbmanis.SafetyStockChecker does not exist
Execution Time : 00:00:00:000
Transfer Time : 00:00:00:000
Total Time : 00:00:00:000

What’s wrong with the function?

ZygD's user avatar

ZygD

20.6k39 gold badges75 silver badges96 bronze badges

asked Apr 18, 2013 at 8:24

randytan's user avatar

That is not the correct way to call a function. Here’s an example to call a function:

SELECT SafetyStockChecker(16,16) FROM TableName

The way you are doing now is for calling a STORED PROCEDURE. That is why the error says:

PROCEDURE inv_sbmanis.SafetyStockChecker does not exist

because it is searching for a Stored procedure and not a function.

answered Apr 18, 2013 at 8:26

John Woo's user avatar

John WooJohn Woo

255k69 gold badges492 silver badges488 bronze badges

0

You should use

SELECT SafetyStockChecker(16,16)

answered Apr 18, 2013 at 8:36

Amit Garg's user avatar

Amit GargAmit Garg

3,8271 gold badge29 silver badges35 bronze badges

0

Содержание

  1. Русские Блоги
  2. [MySQL] При вызове хранимой процедуры отображается ОШИБКА 1305 (42000): PROCEDURE test.sp1 не существует
  3. Описание проблемы:
  4. Исправление проблем:
  5. Интеллектуальная рекомендация
  6. Реализация оценки приложения iOS
  7. JS функциональное программирование (е)
  8. PWN_JarvisOJ_Level1
  9. Установка и развертывание Kubernetes
  10. На стороне многопроцессорного сервера — (2) *
  11. Ошибка с процедурами mysql. ERROR 1304 & ERROR 1305

Русские Блоги

[MySQL] При вызове хранимой процедуры отображается ОШИБКА 1305 (42000): PROCEDURE test.sp1 не существует

Описание проблемы:

1. Создайте простую хранимую процедуру запроса в MySQL:

2. Затем используйте CALL для вызова этой хранимой процедуры, и ошибка ОШИБКА 1305 (42000): PROCEDURE test.sp1 не существует:

Исправление проблем:

1. Сначала подумайте, действительно ли эта хранимая процедура отсутствует, проверьте текущую хранимую процедуру и убедитесь, что хранимая процедура существует:

2. В это время я думал, что у пользователя нет разрешения на вызов текущей хранимой процедуры, и разрешение хранимой процедуры было предоставлено текущему пользователю. В это время произошла другая ошибка:

Это обнаруживается путем запроса данных, которые необходимо обновить текущую хранимую процедуру перед выполнением оператора авторизации:

Выполните вызов этой хранимой процедуры еще раз, и отобразится успешный вызов:

Интеллектуальная рекомендация

Реализация оценки приложения iOS

Есть два способа получить оценку приложения: перейти в App Store для оценки и оценка в приложении. 1. Перейдите в App Store, чтобы оценить ps: appid можно запросить в iTunes Connect 2. Встроенная оцен.

JS функциональное программирование (е)

Давайте рассмотрим простой пример, чтобы проиллюстрировать, как используется Reduce. Первый параметр Reduce — это то, что мы принимаем массив arrayOfNums, а второй параметр — функцию. Эта функция прин.

PWN_JarvisOJ_Level1

Nc первый Затем мы смотрим на декомпиляцию ida Перед «Hello, World! N» есть уязвимая_функция, проверьте эту функцию после ввода Видно, что только что появившийся странный адрес является пе.

Установка и развертывание Kubernetes

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

На стороне многопроцессорного сервера — (2) *

Обработка сигнала Родительский процесс часто очень занят, поэтому вы не можете просто вызвать функцию waitpid, чтобы дождаться завершения дочернего процесса. Затем обсудите решение. Обратитесь .

Источник

Ошибка с процедурами mysql. ERROR 1304 & ERROR 1305

Я новичок в использовании процедур и, похоже, не могу работать на моем компьютере. Я использую MySQL v5.1.36 и вводя свой код с помощью консоли MySQL на сервере WAMPP. Если я перейду к (повторной) процедуре создания. Я получаю ошибку # 1304 (42000).

Однако, если я попытаюсь использовать процедуру, я получаю ошибку # 1305 (42000).

Если процедура существует для одного, как она не может существовать для другого? Что я делаю неправильно.

Я считаю, что проблемы

  • Первая ошибка возникает из-за того, что вы пытаетесь воссоздать существующую процедуру. Если вы сначала должны отказаться от процедуры, вы не получите эту ошибку,
  • Вторая ошибка заключается в том, что ПРОЦЕДУРЫ вызывается с помощью инструкций CALL, а FUNCTIONs вызывается как ссылки на функции, как в вашем коде. Вы должны определить FUNCTION, а не ПРОЦЕДУРА. (Документация MySQL) говорит:

Операция CREATE FUNCTION также используется в MySQL для поддержки UDF (пользовательские функции). См. Раздел 21.2, “Добавление новых функций в MySQL”. UDF можно рассматривать как внешний хранимая функция. Сохраненные функции поделитесь своим пространством имен с UDF. Видеть Раздел 8.2.3, “Обозначение имени функции” и Резолюция “, для правил описание интерпретации сервера ссылки на различные виды функции.

Чтобы вызвать хранимую процедуру, используйте CALL (см. Раздел 12.2.1,” Синтаксис вызова”). Чтобы вызвать сохраненный функции, обратитесь к нему в выражение. Функция возвращает значение во время оценки выражения.

Источник

Страниц: 1

  • Список
  •  » Раздел для начинающих
  •  » INFO: MYSQL ERROR 1305: FUNCTION luigi_rich.TO_SECONDS does not exist

#1 19.03.2017 14:11:40

JamesCaeser
Участник
Зарегистрирован: 19.03.2017
Сообщений: 5

INFO: MYSQL ERROR 1305: FUNCTION luigi_rich.TO_SECONDS does not exist

Помогите, что делать?
Постоянно выпадает ошибка — INFO: MYSQL ERROR 1305: FUNCTION luigi_rich.TO_SECONDS does not exist
Я не понимаю где найти и как исправить эту ошибку, кто может подсказать что делать? Пожалуйста!

Неактивен

#2 19.03.2017 14:30:17

rgbeast
Администратор
MySQL Authorized Developer and DBA
Откуда: Москва
Зарегистрирован: 21.01.2007
Сообщений: 3874

Re: INFO: MYSQL ERROR 1305: FUNCTION luigi_rich.TO_SECONDS does not exist

В базе данных luigi_rich должна быть хранимая функция TO_SECONDS, но ее нет. Возможно, забыли перенести при переезде.

Неактивен

#3 19.03.2017 15:32:24

JamesCaeser
Участник
Зарегистрирован: 19.03.2017
Сообщений: 5

Re: INFO: MYSQL ERROR 1305: FUNCTION luigi_rich.TO_SECONDS does not exist

А куда вставить этот to_seconds чтобы все заработало? Никак понять не могу.

Неактивен

#4 19.03.2017 15:36:50

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

Re: INFO: MYSQL ERROR 1305: FUNCTION luigi_rich.TO_SECONDS does not exist

TO_SECONDS(expr) это стандартная
вероятно у вас в запросе есть пробел перед открывающей скобкой.

Неактивен

#5 19.03.2017 16:29:02

JamesCaeser
Участник
Зарегистрирован: 19.03.2017
Сообщений: 5

Re: INFO: MYSQL ERROR 1305: FUNCTION luigi_rich.TO_SECONDS does not exist

А где найти эту строку? Все перерыл, нигде нету, ни в БД, ни в других файлах.

Неактивен

#6 19.03.2017 16:33:39

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

Re: INFO: MYSQL ERROR 1305: FUNCTION luigi_rich.TO_SECONDS does not exist

а где у вас возникает ошибка? это работа сайта, перенос данных, выполнение запроса в клиенте?

Неактивен

#7 19.03.2017 16:46:16

rgbeast
Администратор
MySQL Authorized Developer and DBA
Откуда: Москва
Зарегистрирован: 21.01.2007
Сообщений: 3874

Re: INFO: MYSQL ERROR 1305: FUNCTION luigi_rich.TO_SECONDS does not exist

Какая у Вас версия MySQL?

TO_SECONDS() is available beginning with MySQL 5.5.0.

Неактивен

#8 19.03.2017 16:55:31

JamesCaeser
Участник
Зарегистрирован: 19.03.2017
Сообщений: 5

Re: INFO: MYSQL ERROR 1305: FUNCTION luigi_rich.TO_SECONDS does not exist

Данная ошибка возникает при запуске сервера в MTA, какая версия, я сам точно не знаю, вроде 5.6, но это не точно, можно где-то узнать?

Неактивен

#9 20.03.2017 11:45:12

deadka
Администратор
Зарегистрирован: 14.11.2007
Сообщений: 2399

Re: INFO: MYSQL ERROR 1305: FUNCTION luigi_rich.TO_SECONDS does not exist

Узнать можно с помощью запроса

select version();

в консоли mysql или phpmyadmin, если у Вас такой установлен.


Зеленый свет для слабаков, долги отдают только трусы, тру гики работают только в консоли…

Неактивен

#10 20.03.2017 19:29:41

JamesCaeser
Участник
Зарегистрирован: 19.03.2017
Сообщений: 5

Re: INFO: MYSQL ERROR 1305: FUNCTION luigi_rich.TO_SECONDS does not exist

Вроде вот — 5.6.21, это сможет как-то помочь вам?

Неактивен

#11 20.03.2017 19:51:26

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

Re: INFO: MYSQL ERROR 1305: FUNCTION luigi_rich.TO_SECONDS does not exist

значит проблема в том, что перед скобкой стоит лишний символ (пробел или перенос строки, или …)
где это искать в МТА лучше спрашивать на соответствующем профильном ресурсе
как правило, такие ошибки следствие установки «левого» плагина/мода

Неактивен

Страниц: 1

  • Список
  •  » Раздел для начинающих
  •  » INFO: MYSQL ERROR 1305: FUNCTION luigi_rich.TO_SECONDS does not exist

Описание проблемы:

1. Создайте простую хранимую процедуру запроса в MySQL:

mysql> CREATE PROCEDURE spl() SELECT VERSION();
Query OK, 0 rows affected (0.01 sec)

2. Затем используйте CALL для вызова этой хранимой процедуры, и ошибка ОШИБКА 1305 (42000): PROCEDURE test.sp1 не существует:

mysql> CALL sp1;
ERROR 1305 (42000): PROCEDURE test.sp1 does not exist

Исправление проблем:

1. Сначала подумайте, действительно ли эта хранимая процедура отсутствует, проверьте текущую хранимую процедуру и убедитесь, что хранимая процедура существует:

mysql> SHOW PROCEDURE STATUS;
+------+------+-----------+----------------+---------------------+---------------------+---------------+---------+----------------------+----------------------+--------------------+
| Db   | Name | Type      | Definer        | Modified            | Created             | Security_type | Comment | character_set_client | collation_connection | Database Collation |
+------+------+-----------+----------------+---------------------+---------------------+---------------+---------+----------------------+----------------------+--------------------+
| test | spl  | PROCEDURE | [email protected] | 2019-02-28 13:00:02 | 2019-02-28 13:00:02 | DEFINER       |         | utf8                 | utf8_general_ci      | utf8_general_ci    |
+------+------+-----------+----------------+---------------------+---------------------+---------------+---------+----------------------+----------------------+--------------------+
1 row in set (0.01 sec)

2. В это время я думал, что у пользователя нет разрешения на вызов текущей хранимой процедуры, и разрешение хранимой процедуры было предоставлено текущему пользователю. В это время произошла другая ошибка:

mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%';
ERROR 1133 (42000): Can't find any matching row in the user table

Это обнаруживается путем запроса данных, которые необходимо обновить текущую хранимую процедуру перед выполнением оператора авторизации:

mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)

mysql> GRANT ALL  PRIVILEGES ON test.*  TO 'root'@localhost;
Query OK, 0 rows affected (0.00 sec)

Выполните вызов этой хранимой процедуры еще раз, и отобразится успешный вызов:

mysql> SHOW PROCEDURE STATUS;
+------+------+-----------+----------------+---------------------+---------------------+---------------+---------+----------------------+----------------------+--------------------+
| Db   | Name | Type      | Definer        | Modified            | Created             | Security_type | Comment | character_set_client | collation_connection | Database Collation |
+------+------+-----------+----------------+---------------------+---------------------+---------------+---------+----------------------+----------------------+--------------------+
| test | spl  | PROCEDURE | [email protected] | 2019-02-28 13:11:23 | 2019-02-28 13:11:23 | DEFINER       |         | utf8                 | utf8_general_ci      | utf8_general_ci    |
+------+------+-----------+----------------+---------------------+---------------------+---------------+---------+----------------------+----------------------+--------------------+
1 row in set (0.01 sec)

mysql> CALL spl;
+-----------+
| VERSION() |
+-----------+
| 5.5.40    |
+-----------+
1 row in set (0.00 sec)

Понравилась статья? Поделить с друзьями:
  • Mysql installer accounts and roles ошибка
  • Mysql insert игнорировать ошибки
  • Mysql innodb проверка базы на ошибки
  • Mysql fetch assoc ошибка
  • Mysql 500 ошибка