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

Ogranicenja nad kolonama

[es] :: MySQL :: Ogranicenja nad kolonama

[ Pregleda: 1953 | Odgovora: 3 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

biske86
Ivan Biševac
Zubin Potok

Član broj: 62435
Poruke: 979
*.dynamic.isp.telekom.rs.

Sajt: biske.rs


+39 Profil

icon Ogranicenja nad kolonama26.09.2010. u 15:00 - pre 165 meseci
Da li je moguće da stavim ogranicenje nad nekom kolonom da recimo ne mogu da se unose prazni stringovi? Recimo za kolonu IME ako neko pokuša da ubaci prazan string '' trebalo bi da se izbaci greška.
 
Odgovor na temu

Nikola Poša
Backend (PHP) developer
Beograd

Član broj: 173839
Poruke: 1616
*.adsl-a-1.sezampro.yu.



+33 Profil

icon Re: Ogranicenja nad kolonama26.09.2010. u 18:42 - pre 165 meseci
Ako sam dobro razumeo tvoje pitanje, rešenje je da ta neka kolona koja je tipa string, NE bude NULL-abilna, tačnije, ona bi trebala da bude kreirana sa NOT NULL klauzulom.

edit: Doduše, i pored toga će moći da se unose prazni string-ovi. U prilog tome ide ovaj citat iz manual-a:
Citat:
A common error when working with NULL is to assume that it is not possible to insert a zero or an empty string into a column defined as NOT NULL, but this is not the case. These are in fact values, whereas NULL means “not having a value.”

Tako da, jedino rešenje je da u domain logici sprečiš unošenje praznog stringa.
 
Odgovor na temu

biske86
Ivan Biševac
Zubin Potok

Član broj: 62435
Poruke: 979
*.dynamic.isp.telekom.rs.

Sajt: biske.rs


+39 Profil

icon Re: Ogranicenja nad kolonama26.09.2010. u 21:47 - pre 165 meseci
Mene je interesovalo ovo za prazan string. Hvala.

A da li mogu da proverim da mi neko ne stavi umesto int parametra string. Da li mogu iz procedure da nekako proverim parametar i da vidim da li je stvarno integer ili je string?
 
Odgovor na temu

bogdan.kecman
Bogdan Kecman
"specialist"
Oracle
srbistan

Član broj: 201406
Poruke: 15887
*.31.24.217.adsl2.beograd.com.

Sajt: mysql.rs


+2377 Profil

icon Re: Ogranicenja nad kolonama27.09.2010. u 00:12 - pre 165 meseci
nad kolonom moze samo tako sto ces za update/insert da napravis trigger koji ce da proveri da li je prazan string ili ne i da "kuka" ako je prazan sktring

sto se tice int parametra, ako ga koristis kao int mysql ce odraditi implicitnu konverziju tako da ce "123a" biti 123 a "a123" biti 0 .. ti pri kreiranju procedure definises kog su ti tipa parametri i ne razmisljas sta ce korisnik da posalje (ako za int posalje string taj string ce biti nula ako pocinje bilo cim osim cifrom) tako da ti ne treba da brines za "tip" podataka koji dolazi, samo za "sadrzaj"


 
Odgovor na temu

[es] :: MySQL :: Ogranicenja nad kolonama

[ Pregleda: 1953 | Odgovora: 3 ] > FB > Twit

Postavi temu Odgovori

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