Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

If else .. gde je ovde greška ?

[es] :: MySQL :: If else .. gde je ovde greška ?

[ Pregleda: 3547 | Odgovora: 18 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

torb-d-man

Član broj: 156284
Poruke: 124



Profil

icon If else .. gde je ovde greška ?04.11.2014. u 23:02 - pre 114 meseci
Nisam ovde našao podforum MYSQL za početnike.. pa pišem ovde
MYSQL mi je instaliran u okviru WAMP-a MySQL Version :5.6.12 , Apache Version : 2.4.4 , PHP Version : 5.4.16 , OS: Win7

Pokrenem sve servise, uđem u PHPmyAdmin, uđem u svoju bazu, kliknem na karticu SQL (hoću da isprobavam mysql sintaksu pošto sam 'novice') i jednostavan IF .. kod neće da prođe
Code:

    set @s = 5;    

    IF @s = 5 THEN 
    
    select 'petica';
    
    END IF;

.. izbaci grešku: #1064 - You have an error in your SQL syntax;
check the manual that corresponds to your MySQL server version
for the right syntax to use near 'IF @s = 5 THEN
select 'petica'' at line 1

Gde je greška? Predpostavljam da je nešto banalno ali nevidim šta.

a npr.

set @s = 5;
select @s as 'title'; ..prolazi bez problema.
 
Odgovor na temu

plus_minus

Član broj: 289459
Poruke: 2242
*.dynamic.isp.telekom.rs.

Sajt: https://hardcoder.xyz


+2247 Profil

icon Re: If else .. gde je ovde greška ?04.11.2014. u 23:07 - pre 114 meseci
Možda ti pomogne..

http://www.techonthenet.com/mysql/loops/if_then.php

Isto tako, ako nisi do sad.. ali ti radiš pod windozom.. sve u svemu, uporedi, shell script ( bash, npr. ) sintaksu sa sql sintaksom.

Code (bash):


# Bash

if [[ -z $intVar ]]; then

 read -p "There is no integer set yet"

elif [[ -n $intVar ]]
then
 read -p "Integer is set, it is present"

 fi

 


Nalazim jako velike sličnosti u sintaksi, sa evidentnom razlikom, zar ne?
I tako ti je to sa skoro svakim jezikom.

Good luck.
about:networking
 
Odgovor na temu

bogdan.kecman
Bogdan Kecman
"specialist"
Oracle
srbistan

Član broj: 201406
Poruke: 15887
*.dynamic.sbb.rs.

Sajt: mysql.rs


+2377 Profil

icon Re: If else .. gde je ovde greška ?04.11.2014. u 23:26 - pre 114 meseci
Citat:
torb-d-man:
Nisam ovde našao podforum MYSQL za početnike.. pa pišem ovde


nema dovoljno sadrzaja na mysql forumu da bi bilo potrebe za pocetnicki podforum ... tako da si na pravom mestu

Citat:
torb-d-man:
MYSQL mi je instaliran u okviru WAMP-a MySQL Version :5.6.12 , Apache Version : 2.4.4 , PHP Version : 5.4.16 , OS: Win7

Pokrenem sve servise, uđem u PHPmyAdmin, uđem u svoju bazu, kliknem na karticu SQL (hoću da isprobavam mysql sintaksu pošto sam 'novice')


instaliraj workbench kad si vec na windozi, to ti je mnogo zgodniji itnerface nego phpmyadmin

Citat:
torb-d-man:
i jednostavan IF .. kod neće da prođe


IF ne postoji kao sam za sebe on moze da bude samo deo necega .. dakle ovakav if moze da bude deo stored procedure ali ne i stand alone.


 
Odgovor na temu

torb-d-man

Član broj: 156284
Poruke: 124



Profil

icon Re: If else .. gde je ovde greška ?04.11.2014. u 23:54 - pre 114 meseci
Nažalost nepomaže. Na taj link sam juče naleteo. Razlika između primera na tom linku i mog koda je u prisustvu deklaracije preomenljive i odsustvu znaka @ (et) kao prefiks imena promenljive. Negde sam pročitao na netu da nemora da se piše deklaracija i probao sa:
Code:

set @s = 5;
 select @s as 'title'; 
..prolazi bez problema.
A pre par minuta sam probao da pišem ime promenljive bez znaka @ i opet nije prošlo (isti error msg)
Probao sam i sa ovim delimiterom (nevrati nikakav rezultat kao da nisam kliknuo GO) i bez njega i neće.
Sve sam kombinacije probao i neće a ovo je samo IF petlja, čak nije ni IF...ELSE.
Razlika je još što na tom linku je u pitanju funkcija a kod mene nije nego je bukvalno samo ovaj prosti kod:
Code:

     DECLARE @s int;

     set @s = 5;    

     IF @s = 5 THEN 
     
     select 'petica';
     
     END IF;

i neće hehe.
 
Odgovor na temu

torb-d-man

Član broj: 156284
Poruke: 124



Profil

icon Re: If else .. gde je ovde greška ?05.11.2014. u 00:02 - pre 114 meseci
Citat:
IF ne postoji kao sam za sebe on moze da bude samo deo necega .. dakle ovakav if moze da bude deo stored procedure ali ne i stand alone.


E pa to mi reci! Hvala Kecmane.. jbt nerviram se ovde ko mamlaz a ne znam za ovo. Pa kako ću onda da testiram kod? Moram da pišem SP za svaku sitnicu? Nije valjda.
Saću da se bacim na taj Workbench da probam da ga isprovaljujem nadam se da je free
 
Odgovor na temu

bogdan.kecman
Bogdan Kecman
"specialist"
Oracle
srbistan

Član broj: 201406
Poruke: 15887
*.com
Via: [es] mailing liste

Sajt: mysql.rs


+2377 Profil

icon Re: If else .. gde je ovde greška ?05.11.2014. u 00:19 - pre 114 meseci
free je, deo je mysql instalacije za windozu
koji kod testiras ... if then else je deo stored procedure, van stored
procedure nema smisla tako da van procedure nemas sta da ga testiras ...
if moze da bude i deo select-a ali je to vrlo losa praksa tako da ti
savetujem da to ne radis
 
Odgovor na temu

torb-d-man

Član broj: 156284
Poruke: 124



Profil

icon Re: If else .. gde je ovde greška ?05.11.2014. u 00:41 - pre 114 meseci
Ma nikakav specijalan kod netestiram nego običnu sintaksu mysql-a, petlje uslovi samo nisam znao da to sve mora u okviru procedure da pišem , što nije neki problem, mislio da to može kako ti kažeš stand alone kao u SQL-u, nego nije mi palo napamet da nemože kod nezavisno.
 
Odgovor na temu

bogdan.kecman
Bogdan Kecman
"specialist"
Oracle
srbistan

Član broj: 201406
Poruke: 15887
*.com
Via: [es] mailing liste

Sajt: mysql.rs


+2377 Profil

icon Re: If else .. gde je ovde greška ?05.11.2014. u 00:47 - pre 114 meseci
pa ako pises "program" u mysql-u to mora da bude funkcija ili procedura
.. ne moze "program" van istih .. ne mozes ni u C-u da krenes da pises
if (..) { .. van funkcije :)
 
Odgovor na temu

plus_minus

Član broj: 289459
Poruke: 2242
*.dynamic.isp.telekom.rs.

Sajt: https://hardcoder.xyz


+2247 Profil

icon Re: If else .. gde je ovde greška ?05.11.2014. u 02:00 - pre 114 meseci
@torb-d-man

Probaj slobodno i sa Navicat (navicat.com) ako ti Workbench .. ono, ne paše.
Probaj da nađeš, čini mi se da se tako zove.. Navicat Lite .. taj valjda nije trial (zapravo može za dž da se koristi dokle hoćeš), a površiće ti posao..
about:networking
 
Odgovor na temu

bogdan.kecman
Bogdan Kecman
"specialist"
Oracle
srbistan

Član broj: 201406
Poruke: 15887
*.com
Via: [es] mailing liste

Sajt: mysql.rs


+2377 Profil

icon Re: If else .. gde je ovde greška ?05.11.2014. u 02:19 - pre 114 meseci
iirc nema navicat free verziju, a ako ce da juri krekove onda mu je EMS
SQL MANAGER FOR MYSQL mnoogo bolje resenje :D
http://www.sqlmanager.net/products/mysql/manager

no da se zadrzimo na foss resenjima :D

http://www.sequelpro.com/ odlican, free, ja ga koristim na kmeku, ne
znam dal ima i windoze verziju
http://www.heidisql.com odlican i free, dok workbench nije bio skroz
stabilan ja sam na windozi koristi hajdi :D
http://www.devart.com/dbforge/mysql/studio/ ima express verziju free,
nije los, mnogima je to ultimativni sql klijent
http://www.dbtools.com.br/EN/dbmanagerpro/ standard verzija je free
https://www.webyog.com - oni su imali free verziju, ne znam da li
postoji jos uvek, extra lagan za koristenje

...

ima toga jos google is your friend ..

no ja savetujem, posebno pocetnicima, workbench i takodje savetujem ako
se naleti na bilo koji bug da se isti prijavi odma na bugs.mysql.com
 
Odgovor na temu

bogdan.kecman
Bogdan Kecman
"specialist"
Oracle
srbistan

Član broj: 201406
Poruke: 15887
*.com
Via: [es] mailing liste

Sajt: mysql.rs


+2377 Profil

icon Re: If else .. gde je ovde greška ?05.11.2014. u 02:27 - pre 114 meseci
moram jos jedan savet ... kad sam vec krenuo ...

ako imas dovoljno jak komp (procesor koji podrzava VM i par giga rama
slobodno) stavi virtualbox i instaliraj neki linux (na primer centos ti
je moj predlog) bez gui-a, samo text mod. na taj linux onda instaliraj
apache, php, mysql i sta ti je jos zanimljivo .. i onda sa windoze se
kaci na taj linux ssh-om, browserom, workbenchom etc etc ... dakle
preskoci WAMP dzmrlj jer sutra kada budes hteo to sto si radio da
deploynes negde na net neces imati pojma sta i gde ... ovako vec u
startu radis na "serveru" iako je to samo virtualni server kod tebe na
masini ..

ako nemas dovoljno jak komp da dignes linux u vm-u, opet batali wamp,
instaliraj mysql normalno na masinu (skines installer sa dev.mysql.com)
i instaliras php i apache direkt na masinu, dakle zasebno kao servise ..
 
Odgovor na temu

plus_minus

Član broj: 289459
Poruke: 2242
*.dynamic.isp.telekom.rs.

Sajt: https://hardcoder.xyz


+2247 Profil

icon Re: If else .. gde je ovde greška ?05.11.2014. u 02:40 - pre 114 meseci
Citat:
bogdan.kecman: iirc nema navicat free verziju, a ako ce da juri krekove onda mu je EMS
SQL MANAGER FOR MYSQL mnoogo bolje resenje :D


Ne sumnjam. Fora je u tome što kod mene na Windozi imam instaliran taj neki Navicat Lite (baš tako se zove) koji jeste trial, ali ne kuka uopšte za bilo kakvu kintu iako je trial istekao. Takođe, to sam instalirao još pre godinu dana i jače .. i da me ubiješ nemam pojma ni koja je verzija. 2.0 nešto.. Znam da mi za to nije trebao ni krek niti bilo šta, toga se dobro sećam.
about:networking
 
Odgovor na temu

bogdan.kecman
Bogdan Kecman
"specialist"
Oracle
srbistan

Član broj: 201406
Poruke: 15887
*.dynamic.sbb.rs.

Sajt: mysql.rs


+2377 Profil

icon Re: If else .. gde je ovde greška ?05.11.2014. u 02:54 - pre 114 meseci
mislim da tog nema za dl vec neko vreme :( ... sad posle 30dana ne radi (trenutno je aktuelna verzija 11.nesto)
odlicna je to alatka, za neke stvari cak i bolja od EMS-a ali je po meni EMS ipak najkompletnije resenje za pgsql+mysql .. ne znam koja mu je sad cena bio je oko 500eur, bruka :(


 
Odgovor na temu

miodrags
Miodrag Smiljevic
Inženjer projektant
ISC Contact d.o.o.
Beograd

Član broj: 90519
Poruke: 18
*.static.sbb.rs.

Sajt: solair.eunet.yu/~miodrags


+1 Profil

icon Re: If else .. gde je ovde greška ?05.11.2014. u 09:12 - pre 114 meseci
Mislim da ste svi prevideli jednostavnu sintaksnu grešku.

U MySQL-u, kao i u C-u u naredbi IF nikad se poredjenje ne vrši sa @s=5, već sa @s==5.

To je uzrok sintaksne greške.

Pozdrav


Miodrag Smiljević, dipl. ing. el.
 
Odgovor na temu

bogdan.kecman
Bogdan Kecman
"specialist"
Oracle
srbistan

Član broj: 201406
Poruke: 15887
*.com
Via: [es] mailing liste

Sajt: mysql.rs


+2377 Profil

icon Re: If else .. gde je ovde greška ?05.11.2014. u 09:38 - pre 114 meseci
@miodrag, odakle ti to?!

mysql> select 10;
+-------+
| 10 |
+-------+
| 1 |
+-------+
1 row in set (0.00 sec)

mysql> select 1=1;
+-----+
| 1=1 |
+-----+
| 1 |
+-----+
1 row in set (0.00 sec)

mysql> select 10;
+-------+
| 10 |
+-------+
| 1 |
+-------+
1 row in set (0.00 sec)

mysql> select 10=;
ERROR 1064 (42000): You have an error in your SQL syntax; check the
manual that corresponds to your MySQL server version for the right
syntax to use near '=' at line 1
mysql> select if (10,1,0);
+----------------+
| if (10,1,0) |
+----------------+
| 1 |
+----------------+
1 row in set (0.00 sec)

mysql> select if (10=,1,0);
ERROR 1064 (42000): You have an error in your SQL syntax; check the
manual that corresponds to your MySQL server version for the right
syntax to use near '=,1,0)' at line 1
mysql>
 
Odgovor na temu

torb-d-man

Član broj: 156284
Poruke: 124



Profil

icon Re: If else .. gde je ovde greška ?05.11.2014. u 14:52 - pre 114 meseci
Au štaga softvera! Moraću polako da pregledam sve te linkove i taj Navicat i ove što je Kecman naveo, hvala svima.
@Miodrag - nemere, to je prvo što sam probao - poređenje ko u C-u. Ne, ovo je fora što je Kecman rekao nemože u mysqlu kod sam za sebe kao što može u SQL-u.
@Kecman
Citat:

.. dakle preskoci WAMP dzmrlj jer sutra kada budes hteo to sto si radio da
deploynes negde na net neces imati pojma sta i gde ..

Sad si me malo prepao. Do sad kako sam radio (asp.net+sql server): razvijem web applikaciju ili ti neki sajt kod mene na kompu. Onda se otvori nalog na nekom web hostingu. Tamo ima neki korisnički kontrol panel npr. "plesk" - iz njega se kreira ftp nalog i baza na njihovom sql serveru. Povežem moj i njihov sql server i izprebacujem bazu, iz mog total comandera uspostavim ftp vezu i prebacim web stranice i sve što treba. Pa sam predpostavljao da tako nešto se radi i u slučaju PHP+MySql i npr. Cpanel-a, ispravi me ako grešim.
E sad to sa Linuxom što si sugerisao ima rezona i jeste bolje odmah krenuti tim putem, nego nemam sada vremena pošto hoću da relativno brzo napravim neku lokalnu web aplikaciju (da je ja koristim) koju bih kasnije usavršavao i dignuo na net. Tu već mogu da isprobavam to sa linuxem.

Što se tiče ovih softvera za mysql sigurno svaki ima neke svoje prednosti ali ću se najverovatnie odlučiti za neki (koji je free) koji ima/ili može da se podesi naj DARK theme ;) (pošto sam već nabudžio netbeans i DW da budu tamni).

E da, da li je ovo dovoljno dobro za Linux Virtuel Mašinu:

3,00 gigahertz Intel Core2 Duo

3328 Megabytes Usable Installed Memory

Slot 'DIMM0' has 2048 MB
Slot 'DIMM1' is Empty
Slot 'DIMM2' has 2048 MB
Slot 'DIMM3' is Empty

ATI Radeon HD 4600 Series [Display adapter]

i mogu da skuviznem nekih 30GB na hardu za tu VM




 
Odgovor na temu

bogdan.kecman
Bogdan Kecman
"specialist"
Oracle
srbistan

Član broj: 201406
Poruke: 15887
*.com
Via: [es] mailing liste

Sajt: mysql.rs


+2377 Profil

icon Re: If else .. gde je ovde greška ?05.11.2014. u 15:28 - pre 114 meseci
nema razlog da se prepadas .. no cak i na sporom netu skines dvd image
za centos preko noci .. na ok netu skines za po cuke .. virtualbox
instaliras i skines za 10min, centos instaliras za 30min .. realno za
cuku dve posla si spreman da radis odma na "production like" setapu ..
isplati se po meni
 
Odgovor na temu

torb-d-man

Član broj: 156284
Poruke: 124



Profil

icon Re: If else .. gde je ovde greška ?05.11.2014. u 17:48 - pre 114 meseci
Aham ok a jel dovoljno jaka konfiguracija za to (ono što sam gore napisao).
 
Odgovor na temu

bogdan.kecman
Bogdan Kecman
"specialist"
Oracle
srbistan

Član broj: 201406
Poruke: 15887
*.dynamic.sbb.rs.

Sajt: mysql.rs


+2377 Profil

icon Re: If else .. gde je ovde greška ?05.11.2014. u 17:54 - pre 114 meseci
dovoljno
 
Odgovor na temu

[es] :: MySQL :: If else .. gde je ovde greška ?

[ Pregleda: 3547 | Odgovora: 18 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.