webForumDet fria alternativet
Logga in / Bli medlem

bit

Databaser & SQL

9 svar · 157 visningar · startad av HeHo

Medlem sedan apr. 2000277 inlägg
Frågan#1

Har en tabell som innehåller x antal miljoner poster och nu i efterhand vill jag lägga till en kolumn i tabellen med datatypen bit. Saken är ju den att det blir NULL i den kolumen och det verkar ju inte funka......hur gör jag för att få 0 eller 1 på alla rader direkt när man skapar kolumen och går det överhuvudtaget?

Medlem sedan juni 200032 967 inlägg
#2

Jag tror du kan skapa en kolumn av typen integer. Sedan:

Update tblTable set fldNyttfält = 1

Sedan ändrar du bara till BIT, efter det att du tagit bort bocken på tillåt nullvärden.

Mvh,

Medlem sedan apr. 2000277 inlägg
#3

Tack för ett snabbt svar! Skall genast testa.

Medlem sedan dec. 200012 464 inlägg
#4

du kan väl sätta ett defaultvärde när du lägger till kolumnen

alter table ogrish add aleb bit default 0
Medlem sedan apr. 2000277 inlägg
#5

Nä.....vad less jag blir! Först gjorde jag som @nders sa och det resulterade i att det blev en massa kolumner som inte innhöll någonting :) Så efter att jag tagit in backupen och börjat om så testade jag LarsG´s tips. Det gick ju bättre, men default värdet skippar den och lägger in NULL istället. Kan tilläggas att jag har tillgång till SQL servern och kan jobba direkt i den. När man designar tabellen kan man ju oxå välja ett default värde, som inte heller fungerar..... Vad göra?? :OO

Medlem sedan nov. 20011 551 inlägg
#6

Jag har haft samma problem och fick till svar att det inte gick att fylla i defaultvärden i 7:an då man lade till en kolumn i efterhand så jag är oxå jättenyfiken på ett svar :)

Medlem sedan juni 200032 967 inlägg
#7

Nä.....vad less jag blir! Först gjorde jag som @nders sa och det resulterade i att det blev en massa kolumner som inte innhöll någonting

Usch! Nu blir jag verkligen lessen i ögat. Det var inte direkt meningen. :(

Jag tror mig ha gjort enligt min beskrivning vid ett flertal tillfällen och lyckats bra.

Glad dock att du lyckades läsa tillbaka backupen. Puh! :)

Backup skall man ta. :)

Mvh,

Medlem sedan apr. 2000277 inlägg
#8

Backup är bra :)

Men du ska inte vara lessen i ögat @nders!
Måste erkänna att jag inte sagt hela sanningen... :r
jag avbröt processen efter 15 tim när den inte var klar... :q och då när jag kollade var allt borta. Men ack den som ger sig....jag har börjat om på en ny kula och nu tänker jag låta maskinen gå tills den är klar om det så ska ta hela helgen. :) :x

Medlem sedan apr. 2000277 inlägg
#9

:(
Nu efter 7,5 tim fick jag
felmeddelande:

The log file for database 'Bil' is full.
Back up the transaction log for the database to free up some log space.

x( :x

Medlem sedan juni 20008 205 inlägg
#10

Provat det här?

alter table ogrish add aleb bit;
update ogrish set aleb = 1;
alter table ogrish change aleb -- uppdatera aleb
aleb bit not null default 1; -- "döp om" till aleb, sätt defaultvärde
293 ms totalt · 4 externa anrop · v20260731065814-full.05830320
146 ms — deklarationer (db)
0 ms — hämta statistik (cache)
145 ms — hämta tråd, inlägg och bilagor (db)
141 ms — ändringar (db)