En este documento, se describe cómo actualizar las propiedades de vista o metadatos. Después de crear una vista, puedes actualizar las propiedades de vista siguientes:
Permisos necesarios
Como mínimo, para actualizar una vista, debes tener los permisos bigquery.tables.update
y bigquery.tables.get
. Si actualizas la consulta de SQL de la vista, también debes tener permisos para consultar las tablas a las que hace referencia la consulta de SQL de la vista.
Las siguientes funciones predefinidas de Cloud IAM incluyen los permisos bigquery.tables.update
y bigquery.tables.get
:
bigquery.dataEditor
bigquery.dataOwner
bigquery.admin
Además, si un usuario tiene permisos bigquery.datasets.create
, cuando cree un conjunto de datos, se le otorgará el permiso bigquery.dataOwner
para acceder a este.
El acceso bigquery.dataOwner
permite al usuario actualizar tablas y vistas en el conjunto de datos.
Para obtener más información sobre las funciones de Cloud IAM y los permisos en BigQuery, consulta Funciones y permisos predefinidos.
Actualiza una consulta de SQL de una vista
Puedes actualizar la consulta de SQL que se usa para definir una vista si sigues estos pasos:
- Usa Cloud Console o la IU web clásica de BigQuery.
- Usa el comando
bq update
de la herramienta de línea de comandos. - Realiza una llamada al método de API
tables.patch
- Con las bibliotecas cliente, sigue estos pasos:
Puedes cambiar el dialecto de SQL de SQL heredado a SQL estándar en la CLI o en la API. No puedes actualizar una vista SQL heredada a SQL estándar en Cloud Console o en la IU web clásica de BigQuery.
Para actualizar la consulta de SQL de una vista, sigue estos pasos:
Console
En el panel Recursos, despliega tu proyecto y el conjunto de datos, y selecciona la vista.
Haz clic en la pestaña Detalles.
Por encima del cuadro Consulta (Query), haz clic en el botón Editar consulta (Edit query). Haz clic en Abrir (Open) en el cuadro de diálogo que aparece.
Edita la consulta de SQL en el cuadro Editor de consultas (Query editor) y, luego, haz clic en Guardar vista (Save view).
Asegúrate de que todos los campos sean correctos en el cuadro de diálogo Guardar vista (Save view) y, luego, haz clic en Guardar (Save).
IU clásica
Selecciona la vista.
En el panel View Details (Ver detalles), haz clic en Details (Detalles).
Debajo del cuadro Query (Consulta), haz clic en Edit Query (Editar consulta).
Edita la consulta de SQL en el cuadro Consulta (Query) y, luego, haz clic en Guardar vista (Save view).
CLI
Ejecuta el comando bq update
con la marca --view
. Si quieres usar SQL estándar o actualizar el dialecto de consulta de SQL heredado a SQL estándar, debes incluir la marca --use_legacy_sql
y establecerla en false
.
Si tu consulta hace referencia a recursos de funciones externas definidas por el usuario almacenadas en Google Cloud Storage o en archivos locales, usa la marca --view_udf_resource
para especificar esos recursos. La marca --view_udf_resource
no se muestra aquí. Para obtener más información sobre cómo usar UDF, consulta Funciones definidas por el usuario de SQL estándar.
Si actualizas una vista en un proyecto que no es tu proyecto predeterminado, debes agregar el ID del proyecto al nombre del conjunto de datos en el formato siguiente: project_id:dataset
.
bq update \ --use_legacy_sql=false \ --view_udf_resource=path_to_file \ --view='query' \ project_id:dataset.view
Esta es una explicación de los parámetros del ejemplo anterior:
- path_to_file es la ruta de URI o del sistema de archivos local a un archivo de código que se cargará y evaluará de inmediato como un recurso de función definida por el usuario que usa la vista. Repite la marca para especificar varios archivos.
- query es una consulta de SQL estándar válida.
- project_id es el ID del proyecto.
- dataset es un conjunto de datos que contiene la vista.
- view es el nombre de la vista que quieres actualizar.
Por ejemplo:
Ingresa el comando siguiente si quieres actualizar la consulta de SQL de una vista llamada myview
en mydataset
. mydataset
está en tu proyecto predeterminado. La consulta de ejemplo que se usa para actualizar los datos de consultas de vista del conjunto de datos públicos Datos de nombres de EE.UU.
bq update \
--use_legacy_sql=false \
--view \
'SELECT
name,
number
FROM
`bigquery-public-data.usa_names.usa_1910_current`
WHERE
gender = "M"
ORDER BY
number DESC' \
mydataset.myview
Ingresa el comando siguiente si quieres actualizar la consulta de SQL de una vista llamada myview
en mydataset
. mydataset
está en myotherproject
, no en tu proyecto predeterminado. La consulta de ejemplo que se usa para actualizar los datos de consultas de vista del conjunto de datos públicos Datos de nombres de EE.UU.
bq update \
--use_legacy_sql=false \
--view \
'SELECT
name,
number
FROM
`bigquery-public-data.usa_names.usa_1910_current`
WHERE
gender = "M"
ORDER BY
number DESC' \
myotherproject:mydataset.myview
API
Puedes actualizar una vista si llamas al método tables.patch
con un recurso de tabla que contiene una propiedad view
actualizada. Debido a que con el método tables.update
se reemplaza todo el recurso de la tabla, es preferible usar el método tables.patch
.
Go
Antes de probar este ejemplo, sigue las instrucciones de configuración de Go incluidas en la guía de inicio rápido de BigQuery con bibliotecas cliente. Si quieres obtener más información, consulta la documentación de referencia de la API de BigQuery para Go.
Python
Antes de probar este ejemplo, sigue las instrucciones de configuración de Go incluidas en la guía de inicio rápido de BigQuery con bibliotecas cliente. Si quieres obtener más información, consulta la documentación de referencia de la API de BigQuery para Go.
Actualiza la fecha de vencimiento de una vista
Puedes establecer una fecha de vencimiento de una tabla predeterminada en el nivel de conjunto de datos (que afecta tanto a las tablas como a las vistas) o puedes establecer la fecha de vencimiento de una vista cuando esta se crea. Si estableces el vencimiento cuando se crea la vista, se ignora el vencimiento predeterminado de la tabla del conjunto de datos. Si no estableces un vencimiento de la tabla predeterminada en el nivel de conjunto de datos y no estableces un vencimiento cuando se crea la vista, esta nunca vence y debes borrarla de forma manual.
En cualquier momento posterior a la creación de la vista, puedes actualizar la fecha de vencimiento de la vista si sigues estos pasos:
- Usa la IU web clásica de BigQuery
- En este momento, Cloud Console no admite la modificación de las fechas de vencimiento de las vistas.
- Usa el comando
bq update
de la CLI - Realiza una llamada al método de API
tables.patch
- Con las bibliotecas cliente, sigue estos pasos:
Para actualizar la fecha de vencimiento de una vista, sigue estos pasos:
Console
En el panel de navegación, selecciona tu vista.
En la página de detalles de la vista, haz clic en la pestaña Detalles.
A la derecha de Ver información, haz clic en el ícono de edición (lápiz).
En el cuadro de diálogo Información de la vista, en Vencimiento de la vista, haz clic en Especificar fecha.
En el selector de fecha, ingresa la fecha y hora de vencimiento y, luego, haz clic en Aceptar.
Haz clic en Actualizar. La fecha de vencimiento actualizada aparecerá en la sección Información de la vista.
DDL
Las declaraciones del lenguaje de definición de datos (DDL) te permiten crear y modificar tablas y vistas con la sintaxis de consulta de SQL estándar.
Obtén más información sobre el Uso de declaraciones de lenguaje de definición de datos.
Para usar una declaración de DDL en Cloud Console, haz lo siguiente:
Haz clic en Redactar consulta nueva.
Escribe tu declaración de DDL en el área de texto Editor de consultas.
ALTER VIEW mydataset.myview SET OPTIONS ( -- Sets view expiration to timestamp 2025-02-03 12:34:56 in the America/Los Angeles time zone expiration_timestamp=TIMESTAMP("2025-02-03 12:34:56", "America/Los Angeles") );
Haz clic en Ejecutar consulta.
IU clásica
En el panel de navegación, selecciona tu vista.
En la página View Details, haz clic en Details.
Para Expiration Time (Hora de vencimiento), haz clic en Edit (Editar).
En el cuadro de diálogo Actualizar vencimiento (Update expiration), haz clic en En (In) y, luego, ingresa la fecha de vencimiento en días.
Haz clic en Aceptar (OK). La fecha de vencimiento actualizada aparecerá en la página Detalles (Details).
CLI
Ejecuta el comando bq update
con la marca --expiration
. Si actualizas una vista en un proyecto que no es tu proyecto predeterminado, debes agregar el ID del proyecto al nombre del conjunto de datos en el formato siguiente: project_id:dataset
.
bq update \ --expiration integer \ project_id:dataset.view
Esta es una explicación de los parámetros del ejemplo anterior:
- integer es la duración predeterminada (en segundos) de la tabla. El valor mínimo es 3,600 segundos (una hora). La fecha de vencimiento se evalúa según la hora actual más el valor del número entero.
- project_id es el ID del proyecto.
- dataset es el nombre del conjunto de datos que contiene la vista que actualizas.
- view es el nombre de la vista que actualizas.
Por ejemplo:
Ingresa el comando siguiente a fin de actualizar la fecha de vencimiento de myview
en mydataset
a 5 días (432,000 segundos). mydataset
está en tu proyecto predeterminado.
bq update --expiration 432000 mydataset.myview
Ingresa el comando siguiente a fin de actualizar la fecha de vencimiento de myview
en mydataset
a 5 días (432,000 segundos). mydataset
está en myotherproject
, no en tu proyecto predeterminado.
bq update --expiration 432000 myotherproject:mydataset.myview
API
Realiza una llamada al método tables.patch
y usa la propiedad expirationTime
en el recurso de tabla. Debido a que con el método tables.update
se reemplaza todo el recurso de la tabla, es preferible usar el método tables.patch
. Cuando usas la API de REST, el vencimiento de la vista se expresa en milisegundos.
Go
Antes de probar este ejemplo, sigue las instrucciones de configuración de Go incluidas en la Guía de inicio rápido de BigQuery con bibliotecas cliente. Si quieres obtener más información, consulta la documentación de referencia de la API de BigQuery para Go.
Node.js
Antes de probar este ejemplo, sigue las instrucciones de configuración de Go incluidas en la Guía de inicio rápido de BigQuery con bibliotecas cliente. Si quieres obtener más información, consulta la documentación de referencia de la API de BigQuery para Go.
Python
El método para actualizar el vencimiento de una vista es el mismo que se usa a fin de actualizar el vencimiento de una tabla.
Antes de probar este ejemplo, sigue las instrucciones de configuración de Go incluidas en la Guía de inicio rápido de BigQuery con bibliotecas cliente. Si quieres obtener más información, consulta la documentación de referencia de la API de BigQuery para Go.
Actualiza la descripción de una vista
Puedes actualizar la descripción de una vista si sigues estos pasos:
- Usa Cloud Console o la IU web clásica de BigQuery.
- Usa el comando
bq update
de CLI - Realiza una llamada al método de API
tables.patch
- Con las bibliotecas cliente, sigue estos pasos:
Para actualizar la descripción de una vista, sigue estos pasos:
Console
Cuando creas una vista con la IU web de BigQuery, no puedes agregar una descripción. Después de crear la vista, puedes agregar una descripción en la página Detalles (Detalles).
En la lista Recursos (Resources), selecciona tu vista.
Haz clic en la pestaña Detalles (Details).
Haz clic en el ícono de lápiz junto a Descripción (Description).
Ingresa una descripción en el cuadro de diálogo. Haz clic en Actualizar (Update) para guardar la descripción nueva.
DDL
Las declaraciones del lenguaje de definición de datos (DDL) te permiten crear y modificar tablas y vistas con la sintaxis de consulta de SQL estándar.
Obtén más información sobre el Uso de declaraciones de lenguaje de definición de datos.
Para usar una declaración de DDL en Cloud Console, haz lo siguiente:
Haz clic en Redactar consulta nueva.
Escribe tu declaración de DDL en el área de texto Editor de consultas.
ALTER VIEW mydataset.myview SET OPTIONS ( description="Description of myview" );
Haz clic en Ejecutar consulta.
IU clásica
En el panel de navegación, selecciona tu vista.
En la página View Details, haz clic en Details.
En la sección Description (Descripción), haz clic en Describe this view (Describir esta vista) para abrir el cuadro de descripción.
Ingresa una descripción en el cuadro. Cuando haces clic fuera del cuadro, el texto se guarda.
CLI
Ejecuta el comando bq update
con la marca --description
. Si actualizas una vista en un proyecto que no es tu proyecto predeterminado, debes agregar el ID del proyecto al nombre del conjunto de datos en el formato siguiente: [PROJECT_ID]:[DATASET]
.
bq update \ --description "description" \ project_id:dataset.view
Esta es una explicación de los parámetros del ejemplo anterior:
- description es el texto que describe la vista entre comillas.
- project_id es el ID del proyecto.
- dataset es el nombre del conjunto de datos que contiene la vista que actualizas.
- view es el nombre de la vista que actualizas.
Por ejemplo:
Ingresa el comando siguiente para cambiar la descripción de myview
en mydataset
a “Descripción de mi vista” (Description of myview). mydataset
está en tu proyecto predeterminado.
bq update --description "Description of myview" mydataset.myview
Ingresa el comando siguiente para cambiar la descripción de myview
en mydataset
a “Descripción de mi vista” (Description of myview). mydataset
está en myotherproject
, no en tu proyecto predeterminado.
bq update \
--description "Description of myview" \
myotherproject:mydataset.myview
API
Realiza una llamada al método tables.patch
y usa la propiedad description
para actualizar la descripción de la vista en el recurso de tabla. Debido a que con el método tables.update
se reemplaza todo el recurso de la tabla, es preferible usar el método tables.patch
.
Go
Antes de probar este ejemplo, sigue las instrucciones de configuración de Go incluidas en la Guía de inicio rápido de BigQuery con bibliotecas cliente. Si quieres obtener más información, consulta la documentación de referencia de la API de BigQuery para Go.
Java
Actualizar la descripción de una vista es el mismo proceso que actualizar la descripción de una tabla.
Antes de probar este ejemplo, sigue las instrucciones de configuración de Go incluidas en la Guía de inicio rápido de BigQuery con bibliotecas cliente. Si quieres obtener más información, consulta la documentación de referencia de la API de BigQuery para Go.
Node.js
Antes de probar este ejemplo, sigue las instrucciones de configuración de Go incluidas en la Guía de inicio rápido de BigQuery con bibliotecas cliente. Si quieres obtener más información, consulta la documentación de referencia de la API de BigQuery para Go.
Python
Actualizar la descripción de una vista es el mismo proceso que actualizar la descripción de una tabla.
Antes de probar este ejemplo, sigue las instrucciones de configuración de Go incluidas en la Guía de inicio rápido de BigQuery con bibliotecas cliente. Si quieres obtener más información, consulta la documentación de referencia de la API de BigQuery para Go.
Pasos siguientes
- Si quieres obtener más información sobre la administración de vistas, incluso su copia y borrado, consulta Administra vistas.
- Para obtener información sobre cómo crear vistas, consulta Crea vistas.
- Para obtener información sobre cómo crear una vista autorizada, consulta Crea vistas autorizadas.
- Para obtener información sobre las vistas de lista, consulta la página sobre listas de vistas.
- Para obtener más información sobre cómo obtener metadatos de vistas, consulta Obtén información sobre las vistas.