powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Хранимая процедура и текстовый параметр
10 сообщений из 10, страница 1 из 1
Хранимая процедура и текстовый параметр
    #38689273
dt88
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
процедура принимает 1 параметр и выдает строку, но не работает.

Код: sql
1.
2.
3.
4.
5.
6.
7.
CREATE DEFINER= PROCEDURE `agent_info`(IN `agent_login` TEXT)
    NO SQL
BEGIN

SELECT * FROM `agents` WHERE `login` = agent_login;

END



Запрос, например:
Код: sql
1.
SELECT * FROM `agents` WHERE `login` = 'dt88';


отлично срабатывает. А вот процедура возвращает 0 строк. Не пойму почему(
(если в процедуре вместо WHERE `login` = использовать WHERE `id` = и принимать числовое значение (изменив естественно на IN `agent_login` INT , то всё срабатывает... но вот с текстом не получается почему-то... может быть в кодировке что-то не так?))
...
Рейтинг: 0 / 0
Хранимая процедура и текстовый параметр
    #38689305
alex564657498765453
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dt88процедура принимает 1 параметр и выдает строку, но не работает.

Код: sql
1.
2.
3.
4.
5.
6.
7.
CREATE DEFINER= PROCEDURE `agent_info`(IN `agent_login` TEXT)
    NO SQL
BEGIN

SELECT * FROM `agents` WHERE `login` = agent_login;

END



Запрос, например:
Код: sql
1.
SELECT * FROM `agents` WHERE `login` = 'dt88';


отлично срабатывает. А вот процедура возвращает 0 строк. Не пойму почему(
(если в процедуре вместо WHERE `login` = использовать WHERE `id` = и принимать числовое значение (изменив естественно на IN `agent_login` INT , то всё срабатывает... но вот с текстом не получается почему-то... может быть в кодировке что-то не так?))

`login` = agent_login;
вот это что означает??? логин должен равняться переменой или названию столбца??? мускл щитает что агент_логин это название столбца.

КСТАТЕ вопрос для гугу. если имя переменой совпадает с именем поля таблицы, как их различать в хранимках???
...
Рейтинг: 0 / 0
Хранимая процедура и текстовый параметр
    #38689331
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alex564657498765453если имя переменой совпадает с именем поля таблицы, как их различать в хранимках??? http://dev.mysql.com/doc/refman/5.5/en/local-variable-scope.html If an SQL statement, such as a SELECT ... INTO statement, contains a reference to a column and a declared local variable with the same name, MySQL currently interprets the reference as the name of a variable.
...
Рейтинг: 0 / 0
Хранимая процедура и текстовый параметр
    #38689338
alex564657498765453
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
miksoftalex564657498765453если имя переменой совпадает с именем поля таблицы, как их различать в хранимках??? http://dev.mysql.com/doc/refman/5.5/en/local-variable-scope.html If an SQL statement, such as a SELECT ... INTO statement, contains a reference to a column and a declared local variable with the same name, MySQL currently interprets the reference as the name of a variable.

ну ваще я проверил, и в хранимке таки, воспринимает как имя поля!!!

при разных переменых - выдаёт одну строку, при одинаковой - выдаёт все строки, ибо везде логин = логину
...
Рейтинг: 0 / 0
Хранимая процедура и текстовый параметр
    #38689343
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alex564657498765453при одинаковой - выдаёт все строки, ибо везде логин = логинуА может, ибо переменная=переменная? хоть бы код показали... и точную версию MySQL.
...
Рейтинг: 0 / 0
Хранимая процедура и текстовый параметр
    #38689365
alex564657498765453
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
miksoftalex564657498765453при одинаковой - выдаёт все строки, ибо везде логин = логинуА может, ибо переменная=переменная? хоть бы код показали... и точную версию MySQL.

:) прикол
...
Рейтинг: 0 / 0
Хранимая процедура и текстовый параметр
    #38689366
dt88
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
alex564657498765453`login` = agent_login;
вот это что означает??? логин должен равняться переменой или названию столбца??? мускл щитает что агент_логин это название столбца.

т.е. мне необходимо привести agent_login к тексту? Какой раздел мануала почитать?
...
Рейтинг: 0 / 0
Хранимая процедура и текстовый параметр
    #38689401
dt88
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: sql
1.
2.
3.
4.
5.
BEGIN
SET @al := agent_login;
SELECT * FROM `agents` WHERE `agents`.`login` = @al;

END



такой вариант тоже не работает (хоть и переменная agent_login тут не нужна для посредничество, просто отсавил её)..
...
Рейтинг: 0 / 0
Хранимая процедура и текстовый параметр
    #38689458
Gekommen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вот здесь решена похожая проблема

http://www.sql.ru/forum/693218/strannaya-problema-raboty-smesi-mysql-like-utf-8
...
Рейтинг: 0 / 0
Хранимая процедура и текстовый параметр
    #38689462
dt88
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
GekommenВот здесь решена похожая проблема

http://www.sql.ru/forum/693218/strannaya-problema-raboty-smesi-mysql-like-utf-8

Спасибо большое! Изменил сравнение с utf8_unicode_ci на utf8_general_ci и всё заработало
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Хранимая процедура и текстовый параметр
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]