Avatar billede jens_k Nybegynder
04. februar 2003 - 13:37 Der er 9 kommentarer og
2 løsninger

Slet tomt felt i Database

Hej

Jeg har en tabel i en Access Database som hedder DB, og inde i den er der en kolonne som hedder T.

Der er ca 20000 poster, og ved 10000 af dem er T tom. Jeg har prøvet at lave et loop som ser således ud :

do while not rs.eof
  If RS("T") = "" then
    rs.delete
  End IF

rs.movenext
loop

Men den sletter ikke posten, det er som om den ikke kan finde ud af at posten er TOM. Jeg har åbnet databasen, og f.eks slettet det øverste felt som er tomt, og trykket delete 700 gange så jeg er sikker på den er tom.

Nogen som ved hvordan jeg får det fikset ?

Jens K
Avatar billede jens_k Nybegynder
04. februar 2003 - 13:38 #1
Det skal lige siges at jeg har prøvet og skrive "test" i en af dem, og så via ASP scriptet slettet alle dem som var = "test" og det virkede perfekt. Det er bare når den er tom det ikke virker.

Jens K
Avatar billede somaliomar Praktikant
04. februar 2003 - 13:39 #2
Prøv det her:

do while not rs.eof
  If Len(Trim(RS("T"))) = 0 then
    rs.delete
  End IF

rs.movenext
loop
Avatar billede moefelt Nybegynder
04. februar 2003 - 13:41 #3
du kan ikke slette T enkelte steder kun i en tabel - så skal du fjerne T helt fra den. Lyder som om du lige skulle køre databasen igennen ihvertfald de 3 første normalformer.
Avatar billede jens_k Nybegynder
04. februar 2003 - 13:49 #4
moefelt du har ikke forstået spørgsmålet.

somaliomar det virker stadig ik, jeg uploader lige databasen så i kan hente den. 2 sek.

Jens K
Avatar billede jens_k Nybegynder
04. februar 2003 - 13:51 #5
www.team-novo.dk/db1.mdb

Der kan i hente databasen.

Jens K
Avatar billede somaliomar Praktikant
04. februar 2003 - 13:52 #6
Hvad skriver den af fejl?
Avatar billede mufoxe Nybegynder
04. februar 2003 - 13:53 #7
DELETE FROM <tabelnacvn>
WHERE T = ''
Avatar billede mufoxe Nybegynder
04. februar 2003 - 13:54 #8
Bemærk at det sletter hele tuplen.
Avatar billede somaliomar Praktikant
04. februar 2003 - 13:56 #9
Man kan også gøre som mufoxe skriver:

DELETE T FROM DB WHERE T Is Null;
Avatar billede jens_k Nybegynder
04. februar 2003 - 14:02 #10
mufoxe det virkede :)

Mange tak for hjælpen.

Jens K
Avatar billede somaliomar Praktikant
04. februar 2003 - 14:04 #11
Takker for point :)
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
Kurser inden for grundlæggende programmering

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