Delen via


Regels voor het invoeren van zoekwaarden (Hulpmiddelen voor visuele databases)

van toepassing op:SQL Server-

In dit onderwerp worden de conventies besproken die u moet gebruiken bij het invoeren van de volgende typen letterlijke waarden voor een zoekvoorwaarde:

  • Tekstwaarden

  • Numerieke waarden

  • Datums

  • Logische waarden

Opmerking

De informatie in dit onderwerp is afgeleid van de regels voor standaard SQL-92. Elke database kan SQL echter op een eigen manier implementeren. Daarom zijn de hier beschreven richtlijnen mogelijk niet in elk geval van toepassing. Als u vragen hebt over het invoeren van zoekwaarden voor een bepaalde database, raadpleegt u de documentatie voor de database die u gebruikt.

Zoeken op tekstwaarden

De volgende richtlijnen zijn van toepassing wanneer u tekstwaarden invoert in zoekvoorwaarden:

  • Aanhalingstekens Plaats tekstwaarden tussen enkele aanhalingstekens, zoals in dit voorbeeld voor een achternaam:

    'Smith'  
    

    Als u een zoekvoorwaarde invoert in het deelvenster Criteria, kunt u eenvoudig de tekstwaarde typen en de Query en View Ontwerper zet automatisch enkele aanhalingstekens eromheen.

    Opmerking

    In sommige databases worden termen tussen enkele aanhalingstekens geïnterpreteerd als letterlijke waarden, terwijl termen tussen dubbele aanhalingstekens worden geïnterpreteerd als databaseobjecten, zoals kolom- of tabelverwijzingen. Hoewel de ontwerpfunctie voor query's en weergaven termen tussen dubbele aanhalingstekens kan accepteren, kunnen ze daarom anders worden geïnterpreteerd dan verwacht.

  • Apostrofs insluiten Als de gegevens die u zoekt één aanhalingsteken (een apostrof) bevatten, kunt u twee enkele aanhalingstekens invoeren om aan te geven dat u het enkele aanhalingsteken als letterlijke waarde bedoelt en geen scheidingsteken. Met de volgende voorwaarde wordt bijvoorbeeld gezocht naar de waarde 'Swann's Way:'

    ='Swann''s Way'  
    
  • Lengtelimieten Overschrijd niet de maximale lengte van de SQL-instructie voor uw database bij het invoeren van lange tekenreeksen.

  • Hoofdlettergevoeligheid Volg de hoofdlettergevoeligheidsregels voor de database die u gebruikt. De database die u gebruikt, bepaalt of zoekopdrachten in tekst hoofdlettergevoelig zijn. Sommige databases interpreteren bijvoorbeeld de operator '=' om een exacte hoofdlettergevoelige overeenkomst te betekenen, maar andere databases staan overeenkomsten toe op elke combinatie van hoofdletters en kleine letters.

    Als u niet zeker weet of de database hoofdlettergevoelig zoekt, kunt u de functies UPPER of LOWER in de zoekvoorwaarde gebruiken om de hoofdlettergevoeligheid van de zoekcriteria aan te passen, zoals geïllustreerd in het volgende voorbeeld:

    WHERE UPPER(lname) = 'SMITH'  
    

Zoeken op numerieke waarden

De volgende richtlijnen zijn van toepassing wanneer u numerieke waarden invoert in zoekvoorwaarden:

  • Aanhalingstekens Plaats geen getallen tussen aanhalingstekens.

  • Niet-numerieke tekens Neem geen niet-numerieke tekens op behalve het decimaalteken (zoals gedefinieerd in het dialoogvenster Landinstellingen van het Configuratiescherm van Windows) en een negatief teken (-). Gebruik geen symbolen voor het groeperen van cijfers (zoals een komma tussen duizenden) of valutasymbolen.

  • Decimaaltekens Als u gehele getallen invoert, kunt u een decimaalteken opnemen, ongeacht of de waarde die u zoekt een geheel getal of een reëel getal is.

  • Wetenschappelijke notatie U kunt zeer grote of zeer kleine getallen invoeren met behulp van wetenschappelijke notatie, zoals in dit voorbeeld:

    > 1.23456e-9  
    

Zoeken naar datums

De indeling die u gebruikt om datums in te voeren, is afhankelijk van de database die u gebruikt en in welk deelvenster van de ontwerpfunctie voor query's en weergaven u de datum invoert.

Opmerking

Als u niet weet welke indeling uw gegevensbron gebruikt, typt u een datum in de filterkolom van het deelvenster Criteria in een indeling die u kent. De ontwerper converteert de meeste van deze vermeldingen naar de juiste indeling.

De ontwerpfunctie voor query's en weergaven kan werken met de volgende datumnotaties:

  • Specifiek voor landinstellingen De indeling die is opgegeven voor datums in het dialoogvenster Eigenschappen van regionale instellingen van Windows.

  • Databasespecifiek Elke indeling die wordt begrepen door de database.

  • AnSI-standaarddatum Een notatie die accolades gebruikt, de markering 'd' om de datum en een datumtekenreeks aan te wijzen, zoals in het volgende voorbeeld:

    { d '1990-12-31' }  
    
  • ANSI-standaarddatum/-tijd Vergelijkbaar met de standaarddatum van ANSI, maar gebruikt 'ts' in plaats van 'd' en voegt uren, minuten en seconden toe aan de datum (met een klok van 24 uur), zoals in dit voorbeeld voor 31 december 1990:

    { ts '1990-12-31 00:00:00' }  
    

    Over het algemeen wordt de ANSI-standaarddatumnotatie gebruikt met databases die datums vertegenwoordigen met een gegevenstype echte datum. De datum/tijd-indeling wordt daarentegen gebruikt met databases die ondersteuning bieden voor een datum/tijd-gegevenstype.

De volgende tabel bevat een overzicht van de datumnotatie die u kunt gebruiken in verschillende deelvensters van de ontwerpfunctie voor query's en weergaven.

deelvenster Datumnotatie
Criterium Landspecifieke database-specifieke ANSI-standaard

Datums die in het deelvenster Criteria worden ingevoerd, worden geconverteerd naar een database-compatibele indeling in het SQL-deelvenster.
SQL Databasespecifieke ANSI-standaard
Resultaten Landspecifiek

Zoeken op logische waarden

De indeling van logische gegevens varieert van database tot database. Zeer vaak wordt een waarde van False opgeslagen als nul (0). Een waarde van True wordt het vaakst opgeslagen als 1 en af en toe als -1. De volgende richtlijnen zijn van toepassing wanneer u logische waarden invoert in zoekvoorwaarden:

  • Als u wilt zoeken naar een waarde van False, gebruikt u een nul zoals in het volgende voorbeeld:

    SELECT * FROM authors  
    WHERE contract = 0  
    
  • Als u niet zeker weet welk formaat u moet gebruiken bij het zoeken naar een True (ware) waarde, probeert u 1 te gebruiken, zoals in het volgende voorbeeld:

    SELECT * FROM authors  
    WHERE contract = 1  
    
  • U kunt ook het bereik van de zoekopdracht uitbreiden door te zoeken naar een waarde die niet nul is, zoals in het volgende voorbeeld:

    SELECT * FROM authors  
    WHERE contract <> 0  
    

Zie ook

Zoekcriteria (Hulpmiddelen voor visuele databases) opgeven