Thomas K skrev:
> Ved datatypen tal findes der ikke funktionen tilladnullængde,
> så hvorledes angiver man her at feltet ikke behøves at
> udfyldes?
Den egenskab der angiver om et felt må stå tomt eller ej hedder i
Access-terminologi "Obligatorisk" (eller "Required" i engelske
udgaver") - og den findes for alle felttyper.
Men det er formentlig ikke her dit problem ligger. Problemet er
oftere at du i din sql-sætning ikke tager højde for at der måske
mangler en værdi.
Hvis du kører en sql-sætning som følger:
UPDATE tabelnavn SET talfelt = WHERE idfelt = 42
- vil det gå galt. Der mangler noget fornuftigt efter det første
lighedstegn.
Det giver sjældent problemer med tekstfelter, fordi man putter
anførselstegnene uden om asp-værdien:
UPDATE tabelnavn SET tekstfelt = '' WHERE idfelt = 42
- giver ikke problemer, fordi '' (den tomme streng) også er en
værdi (det kan så give problemer med tilladnullængde, men dem har
du ordnet).
Du kan løse dit problem med talfelter på to måder. Enten ved at
pille feltnavn og lighedstegn ud af opdateringssætningen eller også
ved at bruge specialværdien NULL (uden anførselstegn). Bemærk at
det ikke nødvendigvis giver samme resultat - hvis man udelader
feltnavnet, vil den eksisterende værdi blive stående i feltet. Hvis
man skriver NULL som værdi, vil den eksisterende værdi blive
slettet (og erstattet med NULL-værdien).
Eksempler:
UPDATE tabel SET tekstfelt = '' WHERE idfelt = 42
(talfelt er ikke nævnt, og værdien står dermed urørt)
UPDATE tabel SET tekstfelt = '', talfelt = NULL WHERE idfelt = 42
(talfelt sættes til NULL ~ blank værdi)
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på
http://usenet.dk/netikette/citatteknik.html