FOR UPDATE-sats

Instruktionen FOR UPDATE låser poster för positionsuppdateringar eller positionsraderingar via SQL-markörer. Formatet är:

Kopiera
FOR UPDATE [OF kolumnuttryck]

kolumnuttryck är en lista över de fältnamn i databastabellen som du vill uppdatera, avgränsade av kommatecken. kolumnuttryck är valfritt och ignoreras.

Exempel

Returnera alla poster i databasen över anställda som har ett värde i fältet LÖN som är högre än 20 000.

Kopiera
SELECT * FROM anst WHERE lön > 20000 FOR UPDATE OF efternamn, förnamn, lön

När varje post hämtas är den låst. Om posten uppdateras eller raderas är posten låst tills du har gjort ändringen. I annat fall låses den upp när du hämtar nästa post.

Exempel

Med

SQL-kod

textkonstant

Kopiera
SELECT 'KattHund' FROM Säljare

numerisk konstant

Kopiera
SELECT 999 FROM Säljare

datumkonstant

Kopiera
SELECT DATE '2021-06-05' FROM Säljare

tidskonstant

Kopiera
SELECT TIME '02:49:03' FROM Säljare

tidstämpelkonstant

Kopiera
SELECT TIMESTAMP '2021-06-05 02:49:03' FROM Säljare

textkolumn

Kopiera
SELECT Företagsnamn FROM Säljdata
SELECT DISTINCT Företagsnamn FROM Säljdata

numerisk kolumn

Kopiera
SELECT Belopp FROM Säljdata
SELECT DISTINCT Belopp FROM Säljdata

datumkolumn

Kopiera
SELECT Försäljningsdatum FROM Säljdata
SELECT DISTINCT Försäljningsdatum FROM Säljdata

tidskolumn

Kopiera
SELECT Försäljningstid FROM Säljdata
SELECT DISTINCT Försäljningstid FROM Säljdata

tidstämpelkolumn

Kopiera
SELECT Tidstämpel_för_försäljning FROM Säljdata
SELECT DISTINCT Tidstämpel_för_försäljning FROM Säljdata

BLOB-kolumn

Kopiera
SELECT Företagsbroschyrer FROM Säljdata
SELECT GETAS(Företagslogotyp, 'JPEG') FROM Säljdata

Obs!  En BLOB är ett containerfält i en FileMaker Pro-databasfil.

Jokertecken *

Kopiera
SELECT * FROM Säljare
SELECT DISTINCT * FROM Säljare

Information om exemplen

En kolumn är en referens till ett fält i FileMaker Pro-databasfilen. (Fältet kan innehålla många separata värden.)

Jokertecknet asterisk (*) är ett sätt att ange "allt". I exemplet SELECT * FROM Säljare är resultatet alla kolumner i tabellen Säljare. I exemplet SELECT DISTINCT * FROM Säljare är resultatet alla unika rader i tabellen Säljare (inga dubbletter).

Hämta innehållet i ett containerfält: Funktionen CAST() och funktionen GetAs()

Du kan hämta filreferensinformation, binära data eller data med en specifik filtyp från ett containerfält.

  • Om du vill hämta filreferensinformation från ett containerfält, som sökvägen till en fil, bild eller film, använder du funktionen CAST() tillsammans med en SELECT-sats.

  • Om det finns fildata eller binära data i JPEG hämtar SELECT-satsen med GetAs(fältnamn, 'JPEG') data i binär form. Annars returnerar SELECT-satsen med fältnamnet NULL.

Exempel

Använd funktionen CAST() tillsammans med en SELECT-sats för att hämta filreferensinformation.

Kopiera
SELECT CAST(Företagsbroschyrer AS VARCHAR) FROM Säljdata

Om du gjorde följande i det här exemplet:

  • infogade en fil i containerfältet med FileMaker Pro men bara lagrade en referens till filen. SELECT-satsen hämtar då filreferensinformationen som typen SQL_VARCHAR.

  • infogade innehållet i en fil i containerfältet med FileMaker Pro. Då hämtar SELECT-satsen namnet på filen.

  • importerade en fil i containerfältet från något annat program visar SELECT-satsen ”?” (filen visas som Namnlös.dat i FileMaker Pro).

Du kan använda SELECT-satsen med GetAs()-funktionen för att hämta data i binär form på följande sätt:

  • När du använder GetAs()-funktionen med alternativet DEFAULT hämtar du standardströmmen för containern utan att behöva definiera strömtypen.

    Exempel

    Kopiera
    SELECT GetAs(Företagsbroschyrer, DEFAULT) FROM Säljdata
  • Om du vill hämta en enskild uppspelningstyp från en container använder du funktionen GetAs() tillsammans med filens typ utifrån hur data sattes in i containerfältet i FileMaker Pro.

    Exempel

    Om data sattes in med hjälp av kommandot Sätt in > Fil, anger du FIL i funktionen GetAs().

    Kopiera
    SELECT GetAs(Företagsbroschyrer, 'FIL') FROM Säljdata

    Om data sattes in med hjälp av kommandot Sätt in > Bild, dra och släpp eller om det klistrades in från urklipp, anger du någon av filtyperna som visas i listan i följande tabell, till exempel 'JPEG'.

    Kopiera
    SELECT GetAs(Företags_logotyp, 'JPEG') FROM Företags_Ikoner

    Filformat

    Beskrivning

    'GIFf'

    Graphics Interchange Format

    'JPEG'

    Fotografiska bilder

    'TIFF'

    Rasterfilformat för digitala bilder

    'PDF '

    Portable Document Format

    'PNGf'

    Bitmappsbildformat