Novo

Forum kao aplikacija na telefonu

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

  • 6 odgovora
  • 2.820 pregleda

Najnovija ↓

Moze li se ovo uraditi sa jednim query-jem? 09.04.2004. u 16:56 · pre 274 meseca #1
Ovako imam tabela1 u njoj `id` i data paolja u koja su smjesteni podaci koji cesto trebaju a u tabela2 u njoj isto `id` koji odgovara `id` u tabela1 u dodatna polja u koja je smjesteno ostatak podataka za id iz tabela1 ali se oni jako rijetko koriste pa su izdvojeni u posebnu tabelu.

Sad neko je brisao odredjene rekorde iz tabela1 ali ne i iz tabela2 tako da sada u tabela2 ima sirochica koji vise.

Mogu li se oni obrisati jednim query?
MySQL je baza innodb tabele.
Re: Moze li se ovo uraditi sa jednim query-jem? 09.04.2004. u 17:45 · pre 274 meseca #2
Delete from tabela2 where tabela2.id != tabela1.id;
Ovako nesto... Barem bi trebalo... :)
Potpis
JaFreelancer.com
Re: Moze li se ovo uraditi sa jednim query-jem? 10.04.2004. u 00:10 · pre 274 meseca #5
E sad sam htio da postavim podpitanje, kako obezbjediti mehanizam kadse obrise nesto u tabeli1 da obrise i rekord u tabeli2 a da to ne mora misliti neki pametni programer i odmah obadvoje uraditi nego da to baza sama radi?
Re: Moze li se ovo uraditi sa jednim query-jem? 10.04.2004. u 00:39 · pre 274 meseca #6
Citat:
Internet ogledalo, Broj 49
Aleksandar Babović: Baze podataka i Linux
PostgreSQL ili MySQL ?
ACID kompatibilnost
...
Konzistencija znači da nije moguće dilimično izvršenje transakcije. Ako se desi da jedan deo transakcije ne uspe, baza se vraća u prvobitno stanje. Primer je brisanje osobe iz, recimo, baze zaposlenih. Kada obrišemo jednu osobu, potrebno je da obrišemo i sve podatke o njoj iz ostalih tabela. Dobro konfigurisna baza ne dozvoljava brisanje osobe ako se ne obrišu svi podaci vezani za tu osobu.
...
konzistencija:
PostgreSQL - DA
MySQL - NE

U prevodu bi odgovor na tvoje pitanje bio - NE.

MySQL nema mogućnost definicije referencijalnih integriteta između tabela i uspostavljanje šeme relacija baze. Tako i nema informaciju koji su podaci iz različitih tabela u vezi pa ne može da obezbedi mehanizam zaštite brisanja pre provere postojanja zavisnih podataka ili, recimo, kaskadno brisanje vezanih podataka po zahtevu za brisanje iz vodeće tabele.

Bilo bi lepo da to, kao i neke druge stvari, funkcioniše u ovoj SQL varijanti, ali raduje me da MySQL ipak napreduje u svojim mogućnostima.

Zasad programer mora da zna da sastavi lep MySQL zahtev i putem programa vodi računa o vezama u bazi.
Potpis
BoxUp
interesantna logička igra
Monty Hall paradoks - interaktivni demo
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme