Å vite hvordan man skal håndtere nullverdier når du leser en Recordset kan du spare tid på å utvikle din databaseprogrammet. Microsoft Office Access er en relasjonsdatabase styringssystemer inkludert i Microsoft Office-pakken. Visual Basic for Applications , eller VBA , brukes i Access for å automatisere rutineoppgaver . En spørring brukes til å hente data fra en database tabell . En nullverdi representerer en variabel uten verdi . Du vil få en " Ugyldig Bruk av Null " feilmelding når du prøver å tilordne en null til en variabel . Instruksjoner
en
start Microsoft Office Access og velg "Blank Database ," klikk " Opprett". Klikk "Database Tools" og klikk " Visual Basic. " Klikk på " Insert"-menyen og velg
2
Skriv inn følgende for å opprette en ny subrutine " Module ". : En
Private Sub invalidUseOfNULL ( )
Trykk " Enter "
3
skriv inn følgende å erklære variabler : .
Dim strSQL As String
Dim rst Som Recordset
Dim dBS Som Database
Dim readNull As String
Set dBS = CurrentDb
4
Skriv inn følgende for å opprette en ny tabell : en
sQLString = " CREATE TABLE nullValTbl (by TEKST , stat TEKST )"
DoCmd.SetWarnings False
DoCmd.RunSQL ( sQLString )
5
Skriv inn følgende for å sette inn tre plater og en nullverdi :
strSQL = " INSERT INTO nullValTbl VALUES ( nULL , ' TX ' )"
DoCmd.RunSQL ( strSQL )
strSQL = " INSERT INTO nullValTbl VALUES ( ' Dallas' , ' TX ' ) "
DoCmd.RunSQL ( strSQL )
strSQL =" INSERT INTO nullValTbl VALUES (' LOS ANGELES ', ' CA' ) "
DoCmd.RunSQL ( strSQL )
6
Skriv inn følgende for å søke den nye tabellen ved hjelp Recordset : .
Set rst = dbs.OpenRecordset ( "SELECT nullValTbl * FRA nullValTbl ")
rst.MoveFirst
7
Skriv inn følgende å sløyfe gjennom" byen "-feltet og vise resultatene gjennom Umiddelbar Window. Sløyfen inkluderer en " Hvis " statement for å sjekke om Recordset verdien er " Null " for å unngå å få " Ugyldig Bruk av Null " feilmelding.
Gjøre mens Ikke rst.EOF
p Hvis IsNull ( rst.Fields ( "by" ) . Value) Så
readNull = ""
Else
readNull = rst.Fields ( " byen ") . verdi
End If
Debug.Print readNull
rst.MoveNext
Loop
8
Skriv inn følgende for å frigjøre variabler fra minne: .
rst.Close
dbs.Close
Trykk " F5 " for å kjøre subrutine