Avatar billede foko Nybegynder
24. september 2005 - 22:02 Der er 18 kommentarer

sammen colums i flere tables

Hej.

Jeg skal prøve af lave en base hvor en colums findes i flere tabels. er det muligt.

altså f.eks.

Tables1
Navn
Kundenr (PK)
adresse
post nr
by


tables2
Navn
Kundenr (PK)
oplysninger
Avatar billede kalp Novice
24. september 2005 - 22:04 #1
Det er muligt i access og oracle.. så vil da gætte på det også er muligt her:)
Avatar billede foko Nybegynder
24. september 2005 - 22:08 #2
HEHE ja det tror jeg da også men så lige det store million spørgsmål hvordan ?
Avatar billede arne_v Ekspert
24. september 2005 - 22:14 #3
hvad er spørgsmålet ?

selvfølgelig kan du lave 2 tabeller med kolonnenavne som hedder det samme

skal der oprettes en relation mellem tabellerne ?

vil du lave en UNION på de to ?
Avatar billede kalp Novice
24. september 2005 - 22:16 #4
fx. sådan her

hvis det fungere som med oracle.. tror jeg næsten da det er DDL.

DROP TABLE Tables1 CASCADE CONSTRAINTS;
CREATE TABLE Tables1 (
        Navn varchar2 ( 10 ) NOT NULL,
    Kundenr NUMBER ( 5 ) NOT NULL,
        adresse varchar2 ( 15 ) NOT NULL,
        postnr NUMBER ( 5 ) NOT NULL,
        by Varchar2 ( 10 ) NOT NULL,
Primary key(kundenr)
    );

DROP TABLE Tables2 CASCADE CONSTRAINTS;
CREATE TABLE Tables2 (
        Navn varchar2 ( 10 ) NOT NULL,
    Kundenr NUMBER ( 5 ) NOT NULL,
        oplysninger varchar2 ( 30 ) NOT NULL,
Primary key(kundenr)
    );
Avatar billede foko Nybegynder
24. september 2005 - 22:16 #5
UNION ? Hmm jeg er ikke specialt meget inde i SQL.

med en relation formoder jeg du mener de arbejder sammen ??
Avatar billede arne_v Ekspert
24. september 2005 - 22:18 #6
bare prøv og forklar hvad du vil
Avatar billede kalp Novice
24. september 2005 - 22:19 #7
Du opretter de to tabeller...

Du kan få dem til at arbejde sammen via. dine SQL kald.
Avatar billede foko Nybegynder
24. september 2005 - 22:20 #8
jo jeg vil lave en base hvor IP adresse er den primære nøgle. i hver tabel. så det ikke er muligt af skrive den sammen IP adresse to gange
Avatar billede arne_v Ekspert
24. september 2005 - 22:22 #9
det gør du vel bare !?
Avatar billede kalp Novice
24. september 2005 - 22:22 #10
hvis kundeid er kolonnen til dine ip numre så vil det fungere fint.
Avatar billede foko Nybegynder
24. september 2005 - 22:24 #11
Det er ikke noget problem af lave den som en PK men det skal være sådan af hvis jeg skriver den sammen IP adr. ind under f.eks printere og også har den i f.eks servere skal den melde fejl
Avatar billede arne_v Ekspert
24. september 2005 - 22:27 #12
du vil undgå at samme PK bruges 2 gange - 1 gang i den ene tabel og 1 gang
i den anden tabel ?
Avatar billede kalp Novice
24. september 2005 - 22:28 #13
hmm.. hvad med at lave en tabel som indeholder IP numre istedet? så kan du tjekke i den først..

og ellers må du fortælle hvad det er du har i tankerne..
Avatar billede arne_v Ekspert
24. september 2005 - 22:28 #14
det er ikke helt nemt

enten bør du ligge de 2 tabeller sammen eller så bør du oprette en tredie tabel med
med alle PK'erne fra de 2 andre tabeller
Avatar billede foko Nybegynder
24. september 2005 - 22:32 #15
Det vil sige jeg skal lave en tabel kun til IP adresser og så skal de andre tabeler kigger ned i den. er det muligt og er det nemt eller skal jeg holde mig langt væk fra dette og bare vælge. af ligge alle tabeler sammen.
Avatar billede arne_v Ekspert
24. september 2005 - 22:35 #16
medmindre felterne i de 2 tabeller er meget forskellige så ville jeg smelte dem sammen
til en tabel

hvis de er meget forskellige så ville jeg lave den tredie tabel
Avatar billede foko Nybegynder
24. september 2005 - 22:39 #17
De er ikke vildt forskellige men lidt er de da. så tror bare jeg ligger dem ind under en tabel.
Avatar billede claesdamlund Nybegynder
24. september 2005 - 23:45 #18
Du kan oprette dine kolonner som almindelige primærnøgler og derefter implementere tjekket på tværs af tabellerne med Insert og Update triggere som tjekker om den indtastede kundeid eksisterer i den anden tabel (hvis den gør udføres en RollBack Transaction).
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester