Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

Koja varijabla je ovde nedefinisana ???? ili je problem u sintaksi

  • 7 odgovora
  • 2.106 pregleda

Najnovija ↓

Koja varijabla je ovde nedefinisana ???? ili je problem u sintaksi 23.03.2014. u 01:20 · pre 153 meseca #1
DELIMITER $$
CREATE DEFINER=`root`@`%` PROCEDURE `esPrimer0`(IN `Prebrojano` INT, IN `TabelaIme` VARCHAR(50), IN `PoljeIme` VARCHAR(50), IN `Vrednost` vARCHAR(50))
COMMENT 'Prebrojavanje broja pojavljivanja u proizvoljnoj tabeli proizvoljnog polja proizvoljne vrednosti'
BEGIN

SET @upit := CONCAT("SELECT COUNT(*) INTO '",Prebrojano,"' FROM '",TabelaIme,"' WHERE (`",PoljeIme,"' = '",Vrednost,"')");
PREPARE u FROM @upit;
EXECUTE u;

END$$
DELIMITER ;
Re: Koja varijabla je ovde nedefinisana ???? ili je problem u sintaksi 23.03.2014. u 02:07 · pre 153 meseca #2
ovo INTO te zeza

SELECT COUNT(*) INTO '0' FROM ...

to nije validna sintaksa i za to posle INTO ti kaze da nije deklarisana varijabla

posebno kada si stavio da ti je prebrojano IN a onda ga stavljas u '' i to kao vrednost .. nece to tako da ide

Potpis
arhimed
http://www.mysql.rs/ | http://elco.crsndoo.com/
Re: Koja varijabla je ovde nedefinisana ???? ili je problem u sintaksi 23.03.2014. u 02:20 · pre 153 meseca #3
izbacih problematičan deo pa sada izgleda ovako :

DELIMITER $$
CREATE DEFINER=`Goran`@`%` PROCEDURE `esTest01`(IN `TabelaIme` VARCHAR(50), IN `PoljeIme` VARCHAR(50), IN `Vrednost` vARCHAR(50))
COMMENT 'Prebrojavanje broja pojavljivanja u proizvoljnoj tabeli proizvoljnog polja proizvoljne vrednosti'
BEGIN
SET @upit := CONCAT("SELECT COUNT(*) FROM '",TabelaIme,"' WHERE (`",PoljeIme,"' = '",Vrednost,"')");
PREPARE u FROM @upit;
EXECUTE u;

END$$
DELIMITER ;


Tek sada kaže da je problem sa SQL sintaksom,
GDE GREŠIM??? činimi se jednostavan zahtev
'Prebrojavanje broja pojavljivanja u proizvoljnoj tabeli proizvoljnog polja proizvoljne vrednosti'
Re: Koja varijabla je ovde nedefinisana ???? ili je problem u sintaksi 23.03.2014. u 02:33 · pre 153 meseca #4
oko Poljeime (odma posle where) prvi apostrof ti je "BackTick" a drugi
apostrof ti je "single quote"
verovatno si hteo da oba budu backtick:

SET @upit := CONCAT("SELECT COUNT(*) FROM '",TabelaIme,"' WHERE
(`",PoljeIme,"` = '",Vrednost,"')");
Potpis
arhimed
http://www.mysql.rs/ | http://elco.crsndoo.com/
Re: Koja varijabla je ovde nedefinisana ???? ili je problem u sintaksi 23.03.2014. u 02:35 · pre 153 meseca #5
dalje takodje oko tabelaime su ti "single quotes" a trebalo bi da turis "backtick"


i, da, moram da napisem, nadam se da ti je ovo samo za vezbu posto pisanje ovakvih storage procedura nema mnogo smisla!
Potpis
arhimed
http://www.mysql.rs/ | http://elco.crsndoo.com/
Re: Koja varijabla je ovde nedefinisana ???? ili je problem u sintaksi 23.03.2014. u 06:52 · pre 153 meseca #8
nema tu sta da se komentarise, pravljenje stored procedure koja ce da
pozove jednostavan sql je beskorisno iz prostog razloga, sta dobijas
time?! lakse ti je da pozoves count(*) nego da zoves proceduru koja radi
count
Potpis
arhimed
http://www.mysql.rs/ | http://elco.crsndoo.com/
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme