Syftet med en primärnyckel är att ha en och endast en uppsättning av data i en tabell med en unik nyckel urval värde . Relationsdatabas tabeller och VSAM ( Virtual Storage Access Method ) för sekvenserat dataset bara har en primärnyckel . Även om en primärnyckel kan inte ändras som sådana , det finns sätt att överföra alla data i en post till en annan post som skulle ha en ny primärnyckel
Du behöver : .
Computer
1
Välj posten från den anställde ( EMP ) relationsdatabas tabellen med primärnyckeln för anställningsnummer (10 ) med en SQL SELECT-uttryck : .
SELECT *
FRÅN anst
WHERE empno=10
Detta kommer att spara information från det gamla rekordet . Detta uttalande kommer att välja alla poster (*) från tabellen Anställda där arbetstagaren nummer är lika med tio ( 10) . Eftersom det endast finns en primärnyckel ( empno ) för denna tabell kommer endast en post hämtas . Skriv ner all information i alla fält för den anställde . Du kommer att behöva denna information för att skapa den nya posten
2
skapa en ny post med en ny primärnyckel genom att använda INSERT SQL kommando : .
INSERT till EMP ( empno , ename , jobb , lön , deptno )
VALUES ( 7. 878 , 'Smith ', ' COMPTORIST " , 1 . 200 , 40 )
Kopiera ner , i den exakta området ordning i tabellen skall värdet hämtas från SQL SELECT-uttryck . Detta uttalande , när de utförs , kommer att skapa en ny post i tabellen Anställda med en unik primärnyckel ( empno ) av 7878 . Ingen post med denna nyckel ska finnas innan detta uttalande att utföras och sedan försöker infoga en andra skiva med samma primärnyckel wll resultera i ett exemplar primärnyckel fel .
3 .
Radera det gamla rekordet med SQL DELETE kommando :
DELETE FROM anst
WHERE empno=10
Detta uttalande kommer att ta bort den gamla anställde information från den anställde tabellen med primärnyckel värde på 10 .
tips och varningar
Efter isättning av nya skivan , skriva en separat SQL SELECT-sats för att verifiera alla data fälten . Efter delete -sats körs , skriv en SQL SELECT-sats med den unika nyckeln och kontrollera att posten inte är tillgänglig för hämtning . del databaser kräver en begå uttalande att faktiskt sätta in eller ta bort en post . Kontrollera med din DBA ( Data Base Administrator ) för att få inställningarna för din databas tabeller .