Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / MySQL [игнор отключен] [закрыт для гостей] / ПЕРЕМЕННЫЕ В ПРОЦЕДУРАХ / 10 сообщений из 10, страница 1 из 1
27.05.2015, 22:20:00
    #38970218
Санёчечек
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ПЕРЕМЕННЫЕ В ПРОЦЕДУРАХ
CREATE PROCEDURE insert_fish_article(
IN s_link varchar(255) CHARSET utf8,
IN s_links_child varchar(255) CHARSET utf8,
IN s_links_name varchar(255) CHARSET utf8,
IN s_title varchar(255) CHARSET utf8,
IN s_meta_d varchar(255) CHARSET utf8,
IN s_meta_k varchar(255) CHARSET utf8,
IN s_caption varchar(255) CHARSET utf8,
IN s_left_part varchar(255) CHARSET utf8,
IN s_main_part varchar(255) CHARSET utf8,
IN s_right_part varchar(255) CHARSET utf8)
begin

IF(s_left_part != '' OR s_right_part != '') THEN
INSERT INTO fish_article( links,links_child,links_name,title,
meta_d,meta_k,caption,
left_part,main_part,right_part,
data) VALUE(
s_link,s_links_child,s_links_name,
s_title,s_meta_d,s_meta_k,s_caption,s_left_part,s_main_part,s_right_part,CURDATE());
ELSE

SET s_left_part = NULL; Как правильно присвоить эту переменную, чтоб её значение менялось и далее легло в таблицу с этим значением


INSERT INTO fish_article( links,links_child,links_name,title,
meta_d,meta_k,caption,
main_part,
data) VALUE(
s_link,s_links_child,s_links_name,
s_title,s_meta_d,s_meta_k,s_caption,s_main_part,CURDATE());
END IF;

end;

Как правильно присвоить выделенную переменную, чтоб её значение менялось и далее легло в таблицу с этим значением,
ил вообще как присвоить значение ( синтаксис s_left_part = чему-то ) в данном случае
Я уже пробовал по разному, а как правильно не смог установить экспериментальным путём :-(
...
Рейтинг: 0 / 0
28.05.2015, 05:33:06
    #38970297
tanglir
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ПЕРЕМЕННЫЕ В ПРОЦЕДУРАХ
Санёчечек, а нехрен экспериментировать, когда можно просто почитать документацию. Параметры могут быть не только IN.
Кстати, я уже отсюда вижу ошибку в запросе.
...
Рейтинг: 0 / 0
28.05.2015, 08:57:32
    #38970346
Санёчечек
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ПЕРЕМЕННЫЕ В ПРОЦЕДУРАХ
tanglir, трудность вызывает некоторый аспект, чтоб искать в мануале нужно понимать где тонкое место запроса.
Я не против поискать в мануале, но если знаешь ошибку, то хотя бы можно сказать какую область лопатить?
...
Рейтинг: 0 / 0
28.05.2015, 09:21:11
    #38970359
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ПЕРЕМЕННЫЕ В ПРОЦЕДУРАХ
Да у тебя ни основ SQL-синтаксиса, ни элементарно основ логики нету - а ты уже тонкие места ищешь...

Переменная как раз присваивается правильно. А синтаксис у тебя не соблюдается в другом месте.
...
Рейтинг: 0 / 0
28.05.2015, 09:59:34
    #38970398
Санёчечек
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ПЕРЕМЕННЫЕ В ПРОЦЕДУРАХ
Akina, а почему просто не сказать что переменную как IN описывать не нужно?
Такой код выдал сервер бэкапом процедуры.
Если можете подсказать где хороший мануал на русском ?
...
Рейтинг: 0 / 0
28.05.2015, 10:55:37
    #38970452
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ПЕРЕМЕННЫЕ В ПРОЦЕДУРАХ
СанёчечекAkina, а почему просто не сказать что переменную как IN описывать не нужно?
Такой код выдал сервер бэкапом процедуры.
Значит, это ВХОДНАЯ переменная. Обязательная. И описывать её НУЖНО - иначе процедура грохнется на первой же инструкции.
А присвоение ей значения NULL, как я уже сказал, выполняется корректно.

Санёчечекможете подсказать где хороший мануал на русском ?Нет таких. Последний неофициальный датирован бэта-маном к версии, кажется, 5.0.6 (см. http://mysqlru.com/manual.html), а официальный - к версии 5.0.3 (причём с насмерть убитыми индексами).
Зато на русском есть онлайн-книги и онлайн-курсы (см. напр. на intuit.ru).
...
Рейтинг: 0 / 0
28.05.2015, 13:14:14
    #38970694
Mr.Fontaine
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ПЕРЕМЕННЫЕ В ПРОЦЕДУРАХ
Во-первых, вообще не могу понять в чём проблема.... В смысле зачем заниматься присвоением переменной, если она потом никуда не записывается....
Во-вторых, новый синтаксис inserta придумали неужто?
Может проблема как раз во второй причине, что не надо извращаться над существующим синтаксисом написания sql-запросов?
...
Рейтинг: 0 / 0
28.05.2015, 15:05:01
    #38970880
вадя
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ПЕРЕМЕННЫЕ В ПРОЦЕДУРАХ
Санёчечек,
загрузи dbforge b и там всё можешь проверить и понять
...
Рейтинг: 0 / 0
28.05.2015, 23:25:01
    #38971325
Санёчечек
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ПЕРЕМЕННЫЕ В ПРОЦЕДУРАХ
Санёчечекможете подсказать где хороший мануал на русском ?Нет таких. Последний неофициальный датирован бэта-маном к версии, кажется, 5.0.6 (см. http://mysqlru.com/manual.html), а официальный - к версии 5.0.3 (причём с насмерть убитыми индексами).
Зато на русском есть онлайн-книги и онлайн-курсы (см. напр. на intuit.ru).[/quot]

Благодарю за помощь, советовал бы модераторам такие ссылки красным банером прилипить в раздел для начинающих.
Новичку тяжело чему-то научиться если он не знает где сначала посмотреть, а уж потом флудить на форуме с криком помоги.
...
Рейтинг: 0 / 0
28.05.2015, 23:26:21
    #38971329
Санёчечек
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ПЕРЕМЕННЫЕ В ПРОЦЕДУРАХ
Вадя, и Ваш совет необходим для новичка.
Благодарю за отзывчивость.
...
Рейтинг: 0 / 0
Форумы / MySQL [игнор отключен] [закрыт для гостей] / ПЕРЕМЕННЫЕ В ПРОЦЕДУРАХ / 10 сообщений из 10, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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