Clausola FOR UPDATE
La clausola FOR UPDATE
blocca gli aggiornamenti o le eliminazioni nella posizione attraverso i cursori SQL. Il formato è:
FOR UPDATE [OF espressioni_colonna]
espressioni_colonna
è una lista di nomi di campi nella tabella di database che si desidera aggiornare, separati da una virgola. espressioni_colonna
è opzionale e viene ignorato.
Restituire tutti i record nel database dei dipendenti per cui il valore del campo STIPENDIO
è superiore a 20.000 Euro.
SELECT * FROM dip WHERE stipendio > 20000 FOR UPDATE OF cognome, nome, stipendio
I record recuperati vengono bloccati. Se il record viene aggiornato o eliminato, il blocco viene mantenuto finché non si applica la modifica. In caso contrario, il blocco viene rilasciato quando si recupera il record successivo.
Usando |
Esempio SQL |
costante di testo |
Copia
|
costante numerica |
Copia
|
costante di data |
Copia
|
costante di ora |
Copia
|
costante Indicatore data e ora |
Copia
|
colonna di testo |
Copia
|
colonna numerica |
Copia
|
colonna data |
Copia
|
colonna ora |
Copia
|
colonna Indicatore data e ora |
Copia
|
colonna BLOB |
Copia
Nota Un BLOB è un campo Contenitore di un file di database FileMaker Pro. |
carattere jolly* |
Copia
|
Note sugli esempi
Una colonna
è un riferimento a un campo nel file di database FileMaker Pro (il campo può contenere molti valori distinti).
Il carattere jolly asterisco (*) rappresenta "tutto". Per l'esempio SELECT * FROM Venditori
, il risultato comprende tutte le colonne nella tabella Venditori
. Per l'esempio SELECT DISTINCT * FROM Venditori
, il risultato è costituito da tutte le righe uniche nella tabella Venditori
(senza duplicati).
-
Il software FileMaker non memorizza dati per stringhe vuote, quindi le seguenti query non restituiscono mai record:
CopiaSELECT * FROM test WHERE c = ' '
SELECT * FROM test WHERE c <> ' ' -
Se si usa
SELECT
con dati binari, è necessario utilizzare la funzioneRicavaCome()
per specificare il flusso da restituire. Vedere Recupero dei contenuti di un campo Contenitore: funzione CAST() e funzione RicavaCome() per ulteriori informazioni.
Recupero dei contenuti di un campo Contenitore: funzione CAST() e funzione RicavaCome()
Da un campo Contenitore si possono recuperare informazioni di riferimento al file, dati binari o dati di un tipo specifico di file.
-
Per recuperare le informazioni di riferimento al file da un campo Contenitore, come il percorso di un file, di un'immagine o di un video, utilizzare la funzione
CAST()
con un'istruzioneSELECT
. -
Se esistono file o dati binari JPEG, l'istruzione
SELECT
conRicavaCome(nome di campo, "JPEG")
recupera i dati in forma binaria; in caso contrario, l'istruzioneSELECT
con il nome campo restituisceNULL
.
Utilizzare la funzione C
AST()
con un'istruzione SELECT
per recuperare le informazioni di riferimento al file.
SELECT CAST (Brochure_Società AS VARCHAR) FROM Dati_Vendite
In questo esempio se:
-
è stato inserito un file nel campo Contenitore utilizzando FileMaker Pro, ma è stato memorizzato solo un riferimento al file, l'istruzione
SELECT
recupera le informazioni di riferimento al file comeSQL_VARCHAR
. -
sono stati inseriti i contenuti di un file nel campo Contenitore utilizzando FileMaker Pro, l'istruzione
SELECT
recupera il nome del file. -
è stato importato un file nel campo Contenitore da un'altra applicazione, l'istruzione
SELECT
visualizza '?' (il file viene visualizzato come Senza nome.dat in FileMaker Pro).
È possibile utilizzare l'istruzione SELECT
con la funzione RicavaCome()
per recuperare i dati in forma binaria nei seguenti modi:
-
Se si utilizza la funzione
RicavaCome()
con l'opzioneDEFAULT
, viene recuperato il flusso predefinito per il contenitore senza la necessità di definire esplicitamente il tipo di flusso.CopiaSELECT RicavaCome(Brochure_Società, DEFAULT) FROM Dati_Vendite
-
Per recuperare un tipo di flusso singolo da un contenitore, utilizzare la funzione
RicavaCome()
con il tipo di file basato su come sono stati inseriti i dati nel campo Contenitore in FileMaker Pro.Se i dati sono stati inseriti utilizzando il comando Inserisci > File, specificare
'FILE'
nella funzioneRicavaCome()
.CopiaSELECT RicavaCome(Brochure_Società, 'FILE') FROM Dati_Vendite
Se i dati sono stati inseriti utilizzando il comando Inserisci > Immagine, trascinandoli oppure incollandoli dagli appunti, specificare uno dei tipi di file elencati nella tabella di seguito, ad esempio
'JPEG'
.CopiaSELECT RicavaCome(Logo_Società, 'JPEG ') FROM Icone_Società
Tipo di file
Descrizione
'GIFf'
Graphics Interchange Format
'JPEG'
Immagini fotografiche
'TIFF'
Formato raster del file per immagini digitali
'PDF'
Portable Document Format
'PNGf'
Formato immagine Bitmap