Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Хранимые процедуры MySQL & PHP
Форумы портала PHP.SU » PHP » SQL и Архитектура БД » Хранимые процедуры MySQL & PHP

Страниц (1): [1]
 

1. Haron - 06 Мая, 2011 - 17:56:00 - перейти к сообщению
Хранимые процедуры в мускуле - можно использовать средствами php. Например -

PHP:
скопировать код в буфер обмена
  1. mysql_query(SELECT MY_PROCEDURE(id) AS id FROM table);


А можно ли как нибудь создавать хранимые процедуры из PHP?
2. Champion - 06 Мая, 2011 - 18:09:19 - перейти к сообщению
а maysql_query(create procedure proc ... ) не канает?
3. Haron - 06 Мая, 2011 - 18:38:08 - перейти к сообщению
Проканало бы, если бы мускул поддерживал разделение запросов через ';'

CODE (SQL):
скопировать код в буфер обмена
  1. CREATE PROCEDURE `procedure2`(IN sTitle VARCHAR(255))
  2.  BEGIN
  3.  INSERT INTO `threads` (`title`) VALUES (sTitle);
  4.  UPDATE `variables` SET `value` = `value` + 1 WHERE `name` = 'threads';
  5.  END


Но к сожалению это не запихнуть в один mysql_query() (А создавать их надо только так). Есть ли иные способы?
(Добавление)
С mssql кстати, подобных проблем нет, он поддерживает подобные запросы. Печально... :'(
4. Champion - 06 Мая, 2011 - 18:48:04 - перейти к сообщению
а так:
mysql_query(delimiter |);
mysql_query(create procedure begin end | )
mysql_query(delimiter ;)
?
5. Haron - 06 Мая, 2011 - 18:55:50 - перейти к сообщению
Щас попробую... Спасибо
6. EuGen - 06 Мая, 2011 - 19:37:13 - перейти к сообщению
Верно, но лучше одним запросом посылать (иначе параллельные запросы этого соединения могут пострадать)
7. Данил Банаев - 22 Ноября, 2011 - 22:30:42 - перейти к сообщению
Процедура обязательно должна что-то возвращать?
Или просто в нее можно запихать серию запросов не требующих что то вернуть?

 

Powered by ExBB FM 1.0 RC1