MySQL - взорвать / разделить ввод в хранимую процедуру - PullRequest
1 голос
/ 16 ноября 2009

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

В моей хранимой процедуре есть вход VARCHAR (256), который мне нужно разделить и сгенерировать операторы вставки.

i, что взорвать этот varchar "1,2,3,7,8,9", поэтому мне нужно разбить эту строку на "," и просмотреть результат

Ответы [ 3 ]

1 голос
/ 11 сентября 2010

Вот функция split_string () http://forge.mysql.com/tools/tool.php?id=4

1 голос
/ 16 ноября 2009

Да, смотрите эту ветку форума о репликации функциональности в mysql, которую предоставляет tsql.

В этой теме также обсуждаются некоторые недостатки этого метода. Кроме того, я думаю, что вы хотите использовать VARCHAR (255) или просто VARCHAR (MAX), потому что 256 не дает никаких преимуществ, он использует префикс размера 2 байта и при этом хранит только 256 символов.

Рассматривали ли вы использование синтаксиса xml и xpath для извлечения значений? Я думаю, что в будущем это станет более читабельным и понятным методом.

0 голосов
/ 20 ноября 2010

Попробуйте мою библиотеку SQL: http://ondra.zizka.cz/stranky/programovani/sql/mysql_stored_procedures.texy

...