Obtener una rutina

Obtiene un recurso de rutina para un ID de rutina determinado.

Código de ejemplo

Go

Antes de probar este ejemplo, sigue las Goinstrucciones de configuración de la guía de inicio rápido de BigQuery con bibliotecas de cliente. Para obtener más información, consulta la documentación de referencia de la API Go de BigQuery.

Para autenticarte en BigQuery, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación para bibliotecas de cliente.

import (
	"context"
	"fmt"
	"io"

	"cloud.google.com/go/bigquery"
)

// getRoutine demonstrates getting a routine's metadata via the API.
func getRoutine(w io.Writer, projectID, datasetID, routineID string) error {
	// projectID := "my-project-id"
	// datasetID := "mydatasetid"
	// routineID := "myroutineid"
	ctx := context.Background()

	client, err := bigquery.NewClient(ctx, projectID)
	if err != nil {
		return fmt.Errorf("bigquery.NewClient: %w", err)
	}
	defer client.Close()

	meta, err := client.Dataset(datasetID).Routine(routineID).Metadata(ctx)
	if err != nil {
		return fmt.Errorf("couldn't retrieve routine metadata: %w", err)
	}
	// Print information about the routine.
	fmt.Fprintf(w, "Routine %s:\n", routineID)
	fmt.Fprintf(w, "\tType %s:\n", meta.Type)
	fmt.Fprintf(w, "\tLanguage %s:\n", meta.Language)
	fmt.Fprintln(w, "\tArguments:")
	for _, v := range meta.Arguments {
		fmt.Fprintf(w, "\t\tName: %s\tType: %v", v.Name, v.DataType)
	}
	return nil
}

Java

Antes de probar este ejemplo, sigue las Javainstrucciones de configuración de la guía de inicio rápido de BigQuery con bibliotecas de cliente. Para obtener más información, consulta la documentación de referencia de la API Java de BigQuery.

Para autenticarte en BigQuery, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación para bibliotecas de cliente.

import com.google.cloud.bigquery.BigQuery;
import com.google.cloud.bigquery.BigQueryException;
import com.google.cloud.bigquery.BigQueryOptions;
import com.google.cloud.bigquery.Routine;
import com.google.cloud.bigquery.RoutineId;

// Sample to get a routine
public class GetRoutine {

  public static void main(String[] args) {
    // TODO(developer): Replace these variables before running the sample.
    String datasetName = "MY_DATASET_NAME";
    String routineName = "MY_ROUTINE_NAME";
    getRoutine(datasetName, routineName);
  }

  public static void getRoutine(String datasetName, String routineName) {
    try {
      // Initialize client that will be used to send requests. This client only needs to be created
      // once, and can be reused for multiple requests.
      BigQuery bigquery = BigQueryOptions.getDefaultInstance().getService();

      RoutineId routineId = RoutineId.of(datasetName, routineName);
      Routine routine = bigquery.getRoutine(routineId);
      System.out.println("Routine retrieved successfully" + routine.getDescription());
    } catch (BigQueryException e) {
      System.out.println("Routine not retrieved. \n" + e.toString());
    }
  }
}

Node.js

Antes de probar este ejemplo, sigue las Node.jsinstrucciones de configuración de la guía de inicio rápido de BigQuery con bibliotecas de cliente. Para obtener más información, consulta la documentación de referencia de la API Node.js de BigQuery.

Para autenticarte en BigQuery, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación para bibliotecas de cliente.

// Import the Google Cloud client library and create a client
const {BigQuery} = require('@google-cloud/bigquery');
const bigquery = new BigQuery();

async function getRoutine() {
  // Gets an existing routine named "my_routine" in "my_dataset".

  /**
   * TODO(developer): Uncomment the following lines before running the sample.
   */
  // const datasetId = 'my_dataset';
  // const routineId = 'my_routine';

  const dataset = bigquery.dataset(datasetId);

  // Create routine reference and make API call
  const [routine] = await dataset.routine(routineId).get();

  console.log(
    `Routine ${routine.metadata.routineReference.routineId} retrieved.`,
  );
}
getRoutine();

Python

Antes de probar este ejemplo, sigue las Pythoninstrucciones de configuración de la guía de inicio rápido de BigQuery con bibliotecas de cliente. Para obtener más información, consulta la documentación de referencia de la API Python de BigQuery.

Para autenticarte en BigQuery, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación para bibliotecas de cliente.


from google.cloud import bigquery

# Construct a BigQuery client object.
client = bigquery.Client()

# TODO(developer): Set the fully-qualified ID for the routine.
# routine_id = "my-project.my_dataset.my_routine"

routine = client.get_routine(routine_id)  # Make an API request.

print("Routine '{}':".format(routine.reference))
print("\tType: '{}'".format(routine.type_))
print("\tLanguage: '{}'".format(routine.language))
print("\tArguments:")

for argument in routine.arguments:
    print("\t\tName: '{}'".format(argument.name))
    print("\t\tType: '{}'".format(argument.data_type))

Siguientes pasos

Para buscar y filtrar ejemplos de código de otros Google Cloud productos, consulta el Google Cloud navegador de ejemplos.