MySQL UNIQUE – Aseta sarakkeet ainutlaatuisiksi
Opit, kuinka voit MySQL-skripti-mallin avulla asettaa sarakkeen UNIQUE-tilaan, estää kaksoisarvot ja tunnistaa UNIQUE-sarake suoraan taulukkonäkymässä.
Oppaan tavoite
Tämä on esimerkiksi järkevää, jos taulukossa Sähköpostiosoitteet, Puhelinnumerot tai Asiakastunnukset saavat esiintyä vain kerran.
Esimerkissämme käytämme taulukkoa Contacts sarakkeilla ID, Phone ja Name. Puhelinnumero +49 263 43628376 on jo olemassa tietueessa Smith.
Alustava tilanne ilman UNIQUEa
Kun saraketta Phone ei ole asetettu UNIQUE-tilaan, sama puhelinnumero voidaan tallentaa uudelleen.
Tallentamisen jälkeen lisätietue on olemassa. Puhelinnumero esiintyy siten useaan kertaan sarakkeessa Phone.
Avaa MySQL - Skripti ja valitse malli Taulukon sarakkkeen asettaminen ainutuiseksi (UNIQUE). Sitten muokkaat komentoa taulukkoosi ja haluttuun sarakkeeseen.
Aseta sarake ainutuiseksi UNIQUE-tilassa
Esimerkissä taulukolle Contacts ja sarakkeelle Phone käytetään seuraavaa komentoa:
Suorittamisen jälkeen CMS vahvistaa MySql-viestissä, että komento on suoritettu onnistuneesti. Sarake Phone on näin ollen asetettu ainutuiseksi.
ALTER TABLE Contacts ADD CONSTRAINT unique_user UNIQUE (Phone);
Nyt yritetään jälleen tallentaa jo olemassa oleva puhelinnumero +49 263 43628376 uutena tietueena.
Testaa kaksoisarvo uudelleen
Nyt yritetään jälleen tallentaa olemassa oleva puhelinnumero +49 263 43628376 uutena tietueena.
Koska sarake on nyt UNIQUE, samaa arvoa ei saa tallentaa uudelleen. Tallennettaessa kaksoiskappale hylätään ja tapahtuu virhe.
Tärkeää: UNIQUE estää kaksoisarvot suoraan tietokantasovellustasolla. Tämän vuoksi arvoa, joka jo on selkeästi määritellyssä sarakkeessa, ei voida tallentaa uudelleen.
Tunnista UNIQUE-sarake CMS:ssä
Taulukonäkymässä voit viedä hiiren osoittimen asiaankuuluvaan sarakkeeseen. UNIQUE-sarakkeessa CMS näyttää tiedotteen, että jokaisen tietueen on oltava vain kerran tässä sarakkeessa.
Opit, kuinka voit asettaa tietokannan sarakkeen bluetronix CMS:ssä UNIQUE -tilaan. Tällä tavalla sama arvo ei voi olla tallennettuna useaan kertaan tällä sarakkeella.
UNIQUE soveltuu aina, kun tiettyjä tietoja ei saa esiintyä kahdesti samassa sarakkeessa. Tyypillisiä esimerkkejä ovat:
- E-Mail-Adressen bei einem Newsletter
- Telefon- oder Handynummern
- Kundennummern
Näin voit jo tietokantasovellustasolla estää saman ainutlaatuisen arvon tallentamisen useaan otteeseen.
Yhteenveto
Mallin Tablen sarakkeen asettaminen ainutlaatuiseksi (UNIQUE) avulla voit määrittää sarakkeen siten, että jokainen arvo voi esiintyä vain kerran. Esimerkissä sarake Phone taulukossa Contacts asetetaan UNIQUE:ksi. Tämän jälkeen sama puhelinnumero hylätään tallennettaessa. Taulukonäkymässä CMS näyttää asiaankuuluvassa sarakkeessa lisäksi vastaavan UNIQUE-tietoisen tiedotteen.
UKK
mitä asiakkaat meiltä usein kysyvät
Mitä UNIQUE tarkoittaa tietokantasarakkeessa?
UNIQUE tarkoittaa, että sama arvoa ei saa tallentaa useaan kertaan tässä sarakkeessa.
Mihin voin käyttää UNIQUE:a?
UNIQUE soveltuu arvoille, joita saa esiintyä vain kerran, kuten sähköpostiosoitteet, puhelinnumerot tai asiakastunnukset.
Missä voin asettaa sarakkeen bluetronix CMS:ssä UNIQUE:ksi?
Avaa MySQL - Skripti ja käytä siellä mallia Taulukon sarakkeen asettaminen ainutlaatuiseksi (UNIQUE).
Mikä MySQL-komento käytetään esimerkissä?
Tutoriaalissa käytetään komentoa ALTER TABLE Contacts ADD CONSTRAINT unique_user UNIQUE (Phone);.
Mikä taulukko käytetään esimerkissä?
Esimerkki käyttää taulukkoa Contacts, jossa sarakkeet ovat ID, Phone ja Name.
Mikä sarake asetetaan esimerkissä UNIQUE:ksi?
Sarake Phone asetetaan UNIQUE:ksi.
Mitä tapahtuu ilman UNIQUE:a kaksoisarvon kohdalla?
Ilman UNIQUE:a esitetty esimerkki voi tallentaa saman puhelinnumeron uudelleen.
Mitä tapahtuu UNIQUE:n asettamisen jälkeen kaksoisarvon kohdalla?
Kaksoisarvo hylätään tallennettaessa ja tapahtuu virhe.
Miten tunnistan CMS:ssä UNIQUE-sarakkeen?
Kun viet hiiren asiaankuuluvaan sarakkeeseen, CMS näyttää tiedotteen, että jokaisen tietueen on oltava vain kerran tässä sarakkeessa.
Voinko käyttää UNIQUE-ominaisuutta uutiskirjeen sähköpostiosoitteiden kohdalla?
Kyllä. Tällä voit estää saman sähköpostiosoitteen tallentamisen useaan kertaan vastaavassa sarakkeessa.
Voinko käyttää UNIQUE-ominaisuutta puhelinnumeroiden kohdalla?
Kyllä. Opas näyttää täsmälleen tämän käyttötapauksen puhelinsarakkeessa.
Voinko käyttää UNIQUE-ominaisuutta asiakastunnusten kohdalla?
Kyllä. Jos jokaisen asiakastunnuksen tulee esiintyä vain kerran, UNIQUE on siihen sopiva.
Miksi UNIQUE on järkevää?
UNIQUE estää päällekkäiset ainutlaatuiset arvot suoraan tietokantasovelluksessa ja auttaa näin välttämään päällekkäisiä merkintöjä kyseisessä sarakkeessa.