Sto tentando di aggiungere una nuova colonna alla tabella esistente di BigQuery. Ho provato bq command tool e l'approccio API. Ottengo il seguente errore quando effettuo una chiamata a Tables.update().Bigquery aggiunge colonne allo schema della tabella
Ho provato a fornire schema completo con campo aggiuntivo e che mi dà anche lo stesso errore mostrato di seguito.
Con API ottengo seguente errore:
{
"schema": {
"fields": [
{
"name": "added_column",
"type": "integer",
"mode": "nullable"
}
]
}
}
{
"error": {
"errors": [
{
"domain": "global",
"reason": "invalid",
"message": "Provided Schema does not match Table [blah]"
}
],
"code": 400,
"message": "Provided Schema does not match Table [blah]"
}
}
Con strumento BQ ottengo errore seguente: ./bq aggiornamento -t bla added_column: intero
BigQuery errore in un'operazione di aggiornamento: fornito Schema fa non corrisponde Tabella [blah]
thnx. Questo ha funzionato – archman
Puoi anche specificare lo schema sulla riga di comando come una coppia CSV a riga singola, ad es. bq update dataset.table "name: string, age: integer". – Jon
Funziona piuttosto bene, nonostante la documentazione di BigQuery affermi che uno schema di tabella non può essere aggiornato una volta creato: Una volta che lo schema di una tabella è stato specificato, non è possibile cambiarlo senza prima cancellare tutti i dati ad esso associati. Se si desidera modificare lo schema di una tabella, è necessario specificare una writeDisposition di WRITE_TRUNCATE. Per ulteriori informazioni, consultare la risorsa Lavori. –