:Francis: Skrevet 3. juli 2009 Del Skrevet 3. juli 2009 (endret) ALTER TABLE Alarmliste ALTER COLUMN AlarmNummer int; Er gyldig SQL. ALTER TABLE Alarmliste ALTER COLUMN AlarmNummer DEFAULT default_value; Fungerer ikke. Noen som vet hvordan man endrer default verdien til kolonner i SQL (MS SQLServer 2005)? Mvh Francis Endret 3. juli 2009 av :Francis: Lenke til kommentar
:Francis: Skrevet 3. juli 2009 Forfatter Del Skrevet 3. juli 2009 Har kommet et stykke på vei, men sliter fortsatt litt: select distinct sysobjects.name from sysobjects, syscolumns, syscomments where sysobjects.parent_obj = syscolumns.id AND syscomments.id = sysobjects.id AND sysobjects.xtype = 'D' AND syscolumns.name = 'col1' Skulle ikke returnere kun 1 rad? I mitt tilfelle returnerer spørringen default constraint navnene på alle kolonnene i tabellen. ALTER TABLE tab1 DROP CONSTRAINT Df_test_col1 ALTER TABLE tab1 WITH NOCHECK ADD CONSTRAINT [Df_test_col1] DEFAULT (1) FOR col1 Fjerning å skriving av constraints fungerer, problemet er altså at jeg får returnert for mange constraints siden jeg skal bruke resultatet fra den første spørringen i den som fjerner constrainten. Francis Lenke til kommentar
___ Skrevet 3. juli 2009 Del Skrevet 3. juli 2009 ALTER TABLE Alarmliste ALTER COLUMN AlarmNummer int; Er gyldig SQL. ALTER TABLE Alarmliste ALTER COLUMN AlarmNummer DEFAULT default_value; Fungerer ikke. Noen som vet hvordan man endrer default verdien til kolonner i SQL (MS SQLServer 2005)? Mvh Francis Prøv ALTER TABLE Alarmliste ADD CONSTRAINT DF_AlarmNummer DEFAULT <verdi> FOR AlarmNumber; Werner Lenke til kommentar
:Francis: Skrevet 3. juli 2009 Forfatter Del Skrevet 3. juli 2009 Takk for svar Msg 1781, Level 16, State 1, Line 1 Column already has a DEFAULT bound to it. Msg 1750, Level 16, State 0, Line 1 Could not create constraint. See previous errors. Må fjerne gjeldende constraint først, er derfor jeg har den første spørringen hvor jeg forsøker å returnere navnet på default verdi constrainten . Francis Lenke til kommentar
:Francis: Skrevet 6. juli 2009 Forfatter Del Skrevet 6. juli 2009 select distinct sysobjects.name from sysobjects, syscolumns, sysconstraints where sysobjects.id = sysconstraints.constid and sysconstraints.id = syscolumns.id and sysobjects.xtype = 'D' and syscolumns.name = 'Alarmtekst' Returnerer navnet på default constrainten slik at jeg kan bruke resultatet av denne spørringen for å slette gjeldende constraint for å så eventuelt legge til en ny. Kunne jeg skrevet denne spørringen vha JOIN også? Francis Lenke til kommentar
:Francis: Skrevet 6. juli 2009 Forfatter Del Skrevet 6. juli 2009 Spørringen over gjorde ikke akkurat det jeg ville, denne fungerer derimot eksemplarisk til å returnere default verdi constraint navnet på en kolonne: SELECT sysObj.name FROM sysobjects AS sysObj JOIN syscolumns AS sysCol ON sysobj.id = sysCol.cdefault WHERE sysCol.name = 'Alarmtekst'; Francis Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå