Avatar billede jesperf Nybegynder
06. juni 2003 - 12:29 Der er 6 kommentarer og
1 løsning

Tjek om kolonnen eksisterer i forvejen inden jeg forsøger oprette

Jeg skal tilføje en ny kolonne i en table via et SQL script, men jeg vil først tjekke om kolonen allerede eksister, da scriptet ellers vil lave fejl. Det jeg ikke kan finde ud af er, hvordan jeg kan tjekke det!

Er der nogle der har et bud ?

/Jesper
Avatar billede htm Nybegynder
06. juni 2003 - 12:33 #1
Prøv og smid dette ind lige før kolonnenavnet

IF NOT EXISTS
Avatar billede jesperf Nybegynder
06. juni 2003 - 12:44 #2
I en SELECT statment eller ?
Kan du forklar noget mere detaljeret.

/Jesper
Avatar billede htm Nybegynder
06. juni 2003 - 12:46 #3
I dit sql-kald hvor du tilføjer en kolonne! Kender ikke den rette syntax for at tilføje en kolonne i mssql, derfor jeg ikke er mere konkret!

men det er sikkert noget med
ADD IF NOT EXISTS kolonnenavn
Avatar billede venne Nybegynder
06. juni 2003 - 12:48 #4
Jeg bruger selv denne metode:

IF NOT EXISTS (SELECT * FROM INFORMATION_SCHEMA.COLUMNS
              WHERE TABLE_SCHEMA = 'dbo'
                AND TABLE_NAME = 'MinTabel'
                AND COLUMN_NAME = 'NyKolonne')
BEGIN
  ALTER TABLE dbo.MinTabel ADD NyKolonne int NULL
END
Avatar billede jesperf Nybegynder
06. juni 2003 - 12:56 #5
Nej, desværre. Der er ikke nogle parameter til ADD, der ligner det du skriver. (Så vidt jeg ved)

Jeg forestiller mig nærmere en løsninger som denne, hvor man tjekker om en table eksister i forvejen før den oprettes:
----------
if not exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[tblDato]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)
CREATE TABLE [dbo].[tblDato] (
    [Dato] [datetime] NOT NULL
) ON [PRIMARY]
GO
-------------

Jeg kan bare ikke finde noget lignende, når det blot er en ny kolonne jeg vil oprette og derfor først vil tjekke eksister.

Er der nogle der har et bud ?

/Jesper
Avatar billede jesperf Nybegynder
06. juni 2003 - 12:59 #6
Mit foregående svar var til htm. Jeg tjekker lige dit forslag venne! og vender tilbage!

/Jesper
Avatar billede jesperf Nybegynder
06. juni 2003 - 13:03 #7
-> venne. Din løsning virker perfekt!!

Tusind tak for hjælpen!

/Jesper
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