Cláusula FOR UPDATE
La cláusula FOR UPDATE
bloquea registros para actualizaciones posicionadas o eliminaciones posicionadas mediante los cursores SQL. El formato es:
FOR UPDATE [OF expresiones_columna]
expresiones_columna
es una lista de nombres de campos en una tabla de la base de datos que desea actualizar, separados por una coma. expresiones_columna
es opcional y se omite.
Devuelva todos los registros de la base de datos de empleados que tengan un valor del campo SALARIO
superior a 20.000 €.
SELECT * FROM emp WHERE salario > 20000 FOR UPDATE OF apellidos, nombre, salario
Cuando se recupera cada registro, se bloquea. Si el registro se actualiza o elimina, el bloqueo se mantiene hasta que consigne el cambio. En caso contrario, el bloqueo se levanta al recuperar el siguiente registro.
Uso |
SQL de ejemplo |
constante de texto |
Copiar
|
constante numérica |
Copiar
|
constante de fecha |
Copiar
|
constante de hora |
Copiar
|
constante de fecha y hora |
Copiar
|
columna de texto |
Copiar
|
columna numérica |
Copiar
|
columna de fecha |
Copiar
|
columna de hora |
Copiar
|
columna de fecha y hora |
Copiar
|
columna BLOB |
Copiar
Nota Un BLOB es un campo contenedor de un archivo de base de datos de FileMaker Pro. |
Comodín * |
Copiar
|
Notas de los ejemplos
Una columna
es una referencia a un campo en el archivo de base de datos de FileMaker Pro. (El campo puede contener muchos valores distintos).
El carácter comodín asterisco (*) es una forma abreviada de indicar "todo". En el ejemplo SELECT * FROM Vendedores
, el resultado son todas las columnas de la tabla Vendedores
. En el ejemplo SELECT DISTINCT * FROM Vendedores
, el resultado son todas las filas no repetidas de la tabla Vendedores
.
-
El software de FileMaker no almacena datos de cadenas vacías, de manera que las siguientes consultas siempre se devuelven sin registros:
CopiarSELECT * FROM prueba WHERE c =''
SELECT * FROM prueba WHERE c <>'' -
Si utiliza
SELECT
con datos binarios, debe utilizar la funciónGetAs()
para especificar la secuencia que se va a devolver. Consulte Recuperación del contenido de un campo contenedor: Función CAST() y función GetAs() para obtener más información.
Recuperación del contenido de un campo contenedor: Función CAST() y función GetAs()
Puede recuperar información de referencia de archivos, datos binarios o datos de un tipo de archivo específico de un campo contenedor.
-
Para recuperar la información de referencia de archivo de un campo contenedor, como la ruta a un archivo, imagen o vídeo, utilice la función
CAST()
con una secuenciaSELECT
. -
Si existen datos de archivo o los datos binarios JPEG, la secuencia
SELECT
conGetAS(nombre de campo, 'JPEG')
recupera los datos en formato binario; en caso contrario, la secuenciaSELECT
con nombre de campo devuelveNULL
.
Utilice la función C
AST()
con una secuencia SELECT
para recuperar la información de referencia de archivos.
SELECT CAST(Empresa_folletos AS VARCHAR) FROM Datos_ventas
En este ejemplo, si:
-
Ha insertado un archivo en un campo contenedor mediante FileMaker Pro pero ha almacenado sólo una referencia al archivo, la secuencia
SELECT
recupera la información de la referencia del archivo como tipoSQL_VARCHAR
. -
Ha insertado el contenido de un archivo en el campo contenedor mediante FileMaker Pro, la secuencia
SELECT
recupera el nombre del archivo. -
Ha importado un archivo en un campo contenedor desde otra aplicación, la secuencia
SELECT
muestra '?' (el archivo se muestra como Untitled.dat en FileMaker Pro).
Puede utilizar la secuencia SELECT
con la función GetAs()
para recuperar los datos en formato binario de las siguientes formas:
-
Al utilizar la función
GetAs()
con la opciónDEFAULT
, recuperará la secuencia predeterminada del contenedor sin necesidad de definir explícitamente el tipo de secuencia.CopiarSELECT GetAs(Empresa_Folletos, DEFAULT) FROM Datos_ventas
-
Para recuperar un tipo de secuencia individual de un campo contenedor, utilice la función
GetAs()
con el tipo del archivo según la manera en que se insertaron los datos en el campo contenedor en FileMaker Pro.Si los datos se insertaron mediante el comando Insertar > Archivo, especifique
'FILE'
en la funciónGetAs()
.CopiarSELECT GetAs(Empresa_Folletos, 'FILE') FROM Datos_ventas
Si los datos se insertaron mediante el comando Insertar > Imagen, la función arrastrar y soltar o se pegaron desde el portapapeles, especifique uno de los tipos de archivos que se muestran en la siguiente tabla, por ejemplo,
'JPEG'
.CopiarSELECT GetAs(Logo_Empresa, 'JPEG') FROM Iconos_Empresa
Tipo de archivo
Descripción
'GIFf'
Formato de intercambio de gráficos
'JPEG'
Imágenes fotográficas
'TIFF'
Formato de archivos raster para imágenes digitales
'PDF '
Formato de documento portátil
'PNGf'
Formato de imagen de mapa de bits