Kezdőoldal » Számítástechnika » Programozás » Duplikációt, hogy szoktak...

Duplikációt, hogy szoktak lekezelni adatbázisban?

Figyelt kérdés

Pl. van egy regisztrációs oldal ahol a username egy egyedi kulcs.

Ha beszeretnének már egy létező username-el regisztrálni akkor azt a duplikációt úgy szokták lekezelni, hogy előtte megnézik szerepel-e már az adatbázisba a username egy ilyen lekérdezéssel

SELECT COUNT(*) AS count FROM users WHERE username='tesztuser';

és ha 0 a count értéke akkor hozzá adják a user-t.

Vagy egyből insertelik a user-t és ha 1062-es hibakóddal tér vissza a query akkor azt lekezelik.

Melyiket szokták általában használni?

Esetleg van más módja is a duplikátumok lekezelésének?



2019. júl. 29. 11:43
 1/3 anonim ***** válasza:
26%
Utóbbi inkább, de az pont nem szerencsés, hogy ha a név egy kulcs.
2019. júl. 29. 12:49
Hasznos számodra ez a válasz?
 2/3 anonim ***** válasza:
71%
Sokmindentől függ. Ha csak annyit akarok, hogy ha nem létezik, szúrja be, akkor a következő módszerrel: INSERT INTO ... SELECT ... WHERE NOT EXISTS ...
2019. júl. 29. 20:07
Hasznos számodra ez a válasz?
 3/3 anonim ***** válasza:
100%
Nekem a query alapú skálázhatóbbnak tűnik. Tegyül fel hogy be akarsz rakni egy uniwue email címet is. Ugyanúgy sql hibakóddal fog elszállni az insert, csak nem fogod tudni megmondani hogy melyik field miatt. Az sql viszont egyértelmű feedbacket tud adni, hogy mi a baj.
2019. júl. 31. 07:40
Hasznos számodra ez a válasz?

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!