Hvordan få tilgang spørring: Ugyldig Bruk av Null

Hvordan få tilgang spørring: Ugyldig Bruk av Null


Å vite hvordan man skal håndtere nullverdier når du leser en Recordset kan du spare tid på å utvikle din database applikasjon. Microsoft Office Access er en relasjonsdatabase styringssystemer inkludert i Microsoft Office-pakken. Visual Basic for Applications, eller VBA, brukes i Access for å automatisere rutineoppgaver. Et søk blir brukt til å hente data fra en database tabell. En null verdi 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.

Bruksanvisning

1 Start Microsoft Office Access og velg "Blank Database," klikk "Opprett". Klikk "Databaseverktøy", deretter "Visual Basic". Klikk på "Insert" -menyen og velg "Module".

2 Skriv inn følgende for å opprette en ny subrutine:

Private Sub invalidUseOfNULL ()

Trykk enter."

3 Skriv inn følgende å erklære variabler:

Dim strSQL As String

Dim rst As Recordset

Dim dbs som database

Dim readNull As String

Sett dbs = CurrentDb

4 Skriv inn følgende for å opprette en ny tabell:

sQLString = "CREATE TABLE nullValTbl (by TEKST, stat TEKST)"

DoCmd.SetWarnings falske

DoCmd.RunSQL (sQLString)

5 Skriv inn følgende for å sette inn tre plater og en nullverdi:

strSQL = "INSERT INTO nullValTbl VERDIER (NULL, 'TX')"

DoCmd.RunSQL (strSQL)

strSQL = "INSERT INTO nullValTbl VERDIER ( 'DALLAS', 'TX')"

DoCmd.RunSQL (strSQL)

strSQL = "INSERT INTO nullValTbl VERDIER ( 'LOS ANGELES', 'CA')"

DoCmd.RunSQL (strSQL)

6 Skriv inn følgende til å spørre den nye tabellen ved hjelp av Recordset:

Sett rst = dbs.OpenRecordset ( "SELECT nullValTbl. * FROM nullValTbl")

rst.MoveFirst

7 Skriv inn følgende å sløyfe gjennom "byen" -feltet og vise resultatene gjennom Immediate Window. Sløyfen omfatter en "Hvis" statement å sjekke om Recordset verdien er "Null" for å unngå å få "Ugyldig Bruk av Null" feilmelding.

Gjør Mens Ikke rst.EOF

Hvis IsNull (rst.Fields ( "by"). Verdi) Deretter

readNull = ""

Ellers

readNull = rst.Fields("city").Value

Slutt om

Debug.Print readNull

rst.MoveNext

Loop

8 Skriv inn følgende for å frigjøre variabler fra minnet:

rst.Close

dbs.Close

Trykk "F5" for å kjøre subrutine.