[MySQL] DESCRIBE met o.a. UNIQUE constraint

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • telefoontoestel
  • Registratie: Oktober 2002
  • Laatst online: 29-06-2024

telefoontoestel

Maak me gelukkig....Bel!!

Topicstarter
Ik ben bezig met een programmatje voor het porten van tabellen en daarbij neem ik ook de structuur mee. Nu gebruik ik hiervoor de query "DESCRIBE `databasenaam`.`tabelnaam`". Als ik dan vervolgens het resultaat bekijk krijg ik wel alleen de indexen Field, Type, Null, Key, Default en Extra terug. Nu is het soms zo dat een veld beiden de constraints UNIQUE en PRIMARY KEY hebben. In dat geval krijg ik dan alleen PRI terug in de resultaten. Hoe kom ik er nu achter of een veld ook unique is?

telefoontoestel


Acties:
  • 0 Henk 'm!

  • Bert2000
  • Registratie: September 2007
  • Laatst online: 17-09 19:32
is een primary key niet altijd unique?

Acties:
  • 0 Henk 'm!

  • gertvdijk
  • Registratie: November 2003
  • Laatst online: 22-09 12:32
Een primary key is per definitie uniek.
En als ze meerdere kolommen samen een primary key maakt waarvan één of meer uniek is/zijn dan is je databasemodel niet optimaal (niet voldoende genormaliseerd).

[ Voor 68% gewijzigd door gertvdijk op 24-04-2011 10:56 ]

Kia e-Niro 2021 64 kWh DynamicPlusLine. See my GitHub and my blog for articles on security and other stuff.


Acties:
  • 0 Henk 'm!

  • telefoontoestel
  • Registratie: Oktober 2002
  • Laatst online: 29-06-2024

telefoontoestel

Maak me gelukkig....Bel!!

Topicstarter
8)7 Lekker handig dus. Vandaar dat ik er dus ook geen informatie over kon terug vinden, ook al worden ze wel als aparte constraints genoemd. Dan kan ik er nu goed mee aan de slag! Bedankt.

telefoontoestel


Acties:
  • 0 Henk 'm!

  • Gomez12
  • Registratie: Maart 2001
  • Laatst online: 17-10-2023
Niet lullig bedoeld hoor, maar weet je zeker dat je dit kan maken?

Als je dit soort basiskennis al niet hebt ben ik bang wat je oa gaat tegenkomen bij collations etc.

Acties:
  • 0 Henk 'm!

  • telefoontoestel
  • Registratie: Oktober 2002
  • Laatst online: 29-06-2024

telefoontoestel

Maak me gelukkig....Bel!!

Topicstarter
De collation was geen probleem, maar je weet zoiezo alleen maar wat je eerder geleerd is ;) Ik heb ze eigenlijk altijd als 2 aparte waarden gezien, doordat het mij ooit zo is uitgelegd.

telefoontoestel


Acties:
  • 0 Henk 'm!

  • JaQ
  • Registratie: Juni 2001
  • Laatst online: 03:47

JaQ

gertvdijk schreef op zondag 24 april 2011 @ 10:54:
Een primary key is per definitie uniek.
En als ze meerdere kolommen samen een primary key maakt waarvan één of meer uniek is/zijn dan is je databasemodel niet optimaal (niet voldoende genormaliseerd).
Zeg je nu echt dat een primary key altijd uit 1 kolom moet bestaan? Hoe doe je dat dan met een koppeltabel?

Egoist: A person of low taste, more interested in themselves than in me


Acties:
  • 0 Henk 'm!

  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06 13:31

drm

f0pc0dert

Kijk ook eens naar wat je allemaal uit INFORMATION_SCHEMA kunt halen. Niet alles wat je nodig hebt zit in de DESCRIBE of SHOW FULL COLUMNS, namelijk

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


Acties:
  • 0 Henk 'm!

  • Voutloos
  • Registratie: Januari 2002
  • Niet online
Of je gebruikt SHOW CREATE TABLE... ;)

{signature}


Acties:
  • 0 Henk 'm!

  • gertvdijk
  • Registratie: November 2003
  • Laatst online: 22-09 12:32
JaQ schreef op zondag 24 april 2011 @ 14:40:
Zeg je nu echt dat een primary key altijd uit 1 kolom moet bestaan? Hoe doe je dat dan met een koppeltabel?
Nee dat zeg ik toch niet?
gertvdijk schreef op zondag 24 april 2011 @ 10:54:
Een primary key is per definitie uniek.
En als ze meerdere kolommen samen een primary key maakt waarvan één of meer uniek is/zijn dan is je databasemodel niet optimaal (niet voldoende genormaliseerd).
Met andere woorden:
Als je een tabel zou maken met P kolommen als primary key én waarvan daar er al U<P kolommen zijn die samen uniek zijn, dan heb je je database niet goed genormaliseerd (primary key niet optimaal/goed gekozen).
Tegelijk (en heel belangrijk):
- De primary key als geheel moet uniek zijn.
- Als je meerdere kolommen als primary key hebt zijn ze individueel niet ook uniek.
Dientengevolge:
Als er slechts één kolom onderdeel is van de primary key is/hoort die uniek (te zijn).
Als je slechts

[ Voor 32% gewijzigd door gertvdijk op 24-04-2011 16:14 ]

Kia e-Niro 2021 64 kWh DynamicPlusLine. See my GitHub and my blog for articles on security and other stuff.


Acties:
  • 0 Henk 'm!

  • JaQ
  • Registratie: Juni 2001
  • Laatst online: 03:47

JaQ

Je omschrijving is enigszins cryptisch, ik begreep je omschrijving van een primary key niet. Uiteraard kan dat aan mij liggen :)
gertvdijk schreef op zondag 24 april 2011 @ 16:09:
Met andere woorden:
Als je een tabel zou maken met P kolommen als primary key én waarvan daar er al U<P kolommen zijn die samen uniek zijn, dan heb je je database niet goed genormaliseerd (primary key niet optimaal/goed gekozen).
Tegelijk (en heel belangrijk):
- De primary key als geheel moet uniek zijn.
- Als je meerdere kolommen als primary key hebt zijn ze individueel niet ook uniek.
Dientengevolge:
Als er slechts één kolom onderdeel is van de primary key is/hoort die uniek (te zijn).
Als je slechts
Wellicht is het handiger als je de omschrijving uit wikipedia overneemt :) (het bovenstaande lijkt wel een half citaat?)

Egoist: A person of low taste, more interested in themselves than in me

Pagina: 1