Hej jeg er igang med af lave et program der skal holde øje med nogle IP adr.
der til har jeg oprettet 3 tabels "IP adr" "Printers" og "Network"
Jeg kunne forstille mig af både "Printers" og Network" skal hente de sammen oplysninger fra "IP adr" så det ikke bliver muligt af bruge en IP adr mere en gang.
måske er det nok bare med en foreign key i Printers og Network som peger på IPAdr
det sikrer faktisk ikke mod en printer og et "hvad network nu end er" kan få samme IP på database niveau, men det er ret nemt at lave på applikations niveau
TABLE IPnumbers - Id - IPnumber (unique) - DeviceTypeNo (foreign key Id in DeviceTypes)
TABLE DeviceTypes - Id - Description (ex. printer, network, ...)
Dit design problem ligger i at du ikke kan lave en multi en-til-relation. Du vil gerne have et unikt IPnumber, der så enten kan bruges af en printer eller en anden enhed (ex. PC). Dette kan du ikke løse ved at gøre det med 2 tabeller. "Uniqueness" opnår du kun ved at lægge værdien/feltet i én tabel.
Godt så nu har jeg oprette de tabels, skal jeg så bruge et Diagram til at oprette FK ??? og hvis ja kan du så give mig et tip. Eller er det nemmer af lave et SQL Script ? og hvis ja hvordan skal dette se ud ?
foko> Dit udgangspunkt for dit design skal være følgende: Vil du have DBMS (DataBase Management System) til at sikre at du ikke kan få identiske IP numre, eller vil du kode dig ud af det?
jtbroad's forslag betyder at du selv skal kontrollere det, idet det rækker i både NetværkInfo og Printerinfo kan referere til samme række i Devices. Det kan godt lade sig gøre at sikre dette selv, men skal der være garanti for uniquenes (dvs. at to enheder på intet tidspunkt kan have samme IP), så skal man overlade det til DBMS.
Det er lidt den samme problemstilling med redundante data: Der er i teorien intet til hinder for, at data kan existere flere steder i en database, men alle designlærebøger foreskriver at man i stedet laver én instans, som man så refererer til. Hvis man ikke gør det, så er det programmørerne, der *skal* sikre at data altid er konsistente.
Jamen så lyder det som en "DBMS", men som sagt jeg er meget nybegynder i det her så det er sort for mig.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.