Avatar billede ostehamster Nybegynder
13. oktober 2004 - 13:51 Der er 9 kommentarer og
1 løsning

Tilføje en kolonne, men kun hvis det ikke eksistere

Hejsa

Jeg vil gerne lave en sql-string som tilføjer en kolonne til en tabel, men kun hvis denne kolonne ikke findes i forvejen.

ALTER TABLE `faste_mapper` ADD `test` INT( 5 ) NOT NULL; Der skal så bare sættes en betingelse på, men ved ikke lige hvordan. IF NOT EXIST virker i hvert fald ikke :)

/Christoffer
Avatar billede arne_v Ekspert
13. oktober 2004 - 13:58 #1
Jeg tror at du bliver nødt til at lave en SELECT på tabellen og se om kollonnen eksisterer
i result settet.

Det er rimeligt nemt i PHP, ASP etc..
Avatar billede ostehamster Nybegynder
13. oktober 2004 - 14:04 #2
hmm, øv, troede MySQL kunne den slags af sig selv :/
Avatar billede arne_v Ekspert
13. oktober 2004 - 14:06 #3
Jeg læste lidt på docs og kunne ikk eumiddelbart se noget brugbart.

http://dev.mysql.com/doc/mysql/en/ALTER_TABLE.html
Avatar billede ostehamster Nybegynder
13. oktober 2004 - 14:36 #4
Jeps, den har jeg også luret lidt på, uden rigtig at finde noget brugbart. Men jeg må bare bide i det sure æble, og komme igang med at skrive et lille script :)
Avatar billede majkat Nybegynder
13. oktober 2004 - 14:39 #5
Hvorfor ikke bare tilføje kolonnen, checke den fejlmelding der evt. kommer tilbage og ignorere den hvis fejlkoden er 1060?
Avatar billede ostehamster Nybegynder
13. oktober 2004 - 14:49 #6
Nårja, så spare man et kald. Snedigt :)
Avatar billede ostehamster Nybegynder
16. december 2004 - 18:52 #7
Endnu engang har jeg glemt at lukke et spm :( Sorry, er der nogle der vil svare?

/Christoffer
Avatar billede ostehamster Nybegynder
16. december 2004 - 18:53 #8
Altså bare ligge et svar, for at få point :)
Avatar billede arne_v Ekspert
16. december 2004 - 21:20 #9
majkat må da have givet det bedste svar
Avatar billede ostehamster Nybegynder
20. januar 2005 - 19:36 #10
Lukker...
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