Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> ERROR: procedure The used SELECT statements have a different number of columns
szypi1989
post
Post #1





Grupa: Zarejestrowani
Postów: 207
Pomógł: 0
Dołączył: 7.09.2010

Ostrzeżenie: (0%)
-----


Otóż mam problem mam przykładową procedure :
delimiter //
  1. CREATE PROCEDURE wynik ()
  2. BEGIN
  3. DECLARE wynik Varchar(200);
  4. SELECT * INTO wynik FROM school_users_info WHERE id=12;
  5. INSERT INTO vilage VALUES(0,wynik);
  6. END;//


i wyskakuje mi error:
ERROR: procedure The used SELECT statements have a different number of columns

I chciałbym wiedzieć jak zapisuje mi dane z zapytania SELECT do zmiennej wynik ,po przecinku? w postaci tablicy?Jak wyciągnąć dane z tej zmiennej wynik?
dlaczego wyskukuje mi ten error? proszę o pomoc

Ten post edytował szypi1989 26.10.2012, 21:21:30
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
sazian
post
Post #2





Grupa: Zarejestrowani
Postów: 1 045
Pomógł: 141
Dołączył: 19.09.2006
Skąd: B-tów

Ostrzeżenie: (0%)
-----


  1. SELECT * INTO wynik
  2. SELECT sport INTO wynik


widać różnicę ?
w pierwszym przykładzie zapisujesz wiersz do zmiennej, a w drugim komórkę.

z tego co mi wiadomo w MySQL'u nie da się tego zrobić.

w Oracle są specjalne zmienne "wierszowe"
  1. record school_users_info%ROWTYPE;


W MySQL będziesz musiał deklarować tyle zmiennych ile jest kolumn w tabeli i w INTO wymieniać je po przecinku

Ten post edytował sazian 28.10.2012, 17:57:15
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 28.12.2025 - 05:13