2014-04-29 16 views
6

napisać bardzo proste procedury przechowywanej jak poniżej przechowywane:phpmyadmin uruchomić mysql procedury, ale nie ma wyjścia

DROP PROCEDURE IF EXISTS GetAllTours; 

DELIMITER // 

CREATE PROCEDURE GetAllTours() 

BEGIN 

SELECT * FROM tours; 

END // 

DELIMITER ; 

Gdy używam

CALL GetAllTours(); 

z kwerendy SQL, aby uruchomić tę procedurę, nie ma wyjścia .

Ale jeśli uruchomię od >>Routines>>Execute, ta sama procedura zakończy się pomyślnie.

Czy ktoś może mi powiedzieć, jak uruchomić z zapytania SQL i uzyskać wyniki?

Odpowiedz

-1

Po pierwsze, myślę, że próbujesz stworzyć widok. Spójrz tutaj: http://dev.mysql.com/doc/refman/5.0/en/create-view.html

mysql> CREATE VIEW GetAllActiveTours AS SELECT * FROM tours where active=1; 
mysql> select * from GetAllActiveTours; 

do zwracania danych z procedury użyć parametru OUT. http://dev.mysql.com/doc/refman/5.0/en/create-procedure.html

przykład z linku powyżej:

mysql> CREATE PROCEDURE simpleproc (OUT param1 INT) 
    -> BEGIN 
    -> SELECT COUNT(*) INTO param1 FROM t; 
    -> END// 
mysql> CALL simpleproc(@a); 
mysql> SELECT @a; 
+0

To jest test linii poleceń. OP dotyczył wywoływania z phpMyAdmin. – texnic

+0

Świetny styl nadania -1 więcej niż rok później, ponieważ nie przeczytałeś poprawnie pytania ... OP zapytał: "Czy ktoś może mi powiedzieć, jak uruchomić zapytanie SQL i uzyskać wyniki?" – nvanesch

+0

Miał na myśli zapytanie SQL, czyli zakładkę w phpMyAdmin. Walczę z tym samym problemem. – texnic

1

można po prostu użyć tej kwerendy: CALL GetAllTours

Powiązane problemy