Questa guida rapida mostra come utilizzare la console Google Cloud per creare un database in Spanner, inserire dati ed eseguire una query SQL.
Nella guida rapida imparerai a:
- Crea un'istanza Spanner.
- Crea un database.
- Crea uno schema.
- Inserire e modificare i dati.
- Esegui una query.
Per informazioni sul costo dell'utilizzo di Spanner, consulta Prezzi.
Prima di iniziare
- Accedi al tuo account Google Cloud . Se non conosci Google Cloud, crea un account per valutare le prestazioni dei nostri prodotti in scenari reali. I nuovi clienti ricevono anche 300 $di crediti senza costi per l'esecuzione, il test e il deployment dei workload.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
- (Facoltativo) L'API Spanner dovrebbe essere abilitata automaticamente. In caso contrario, attivalo manualmente: Abilita l'API Spanner
-
Per ottenere le autorizzazioni necessarie per creare istanze e database, chiedi all'amministratore di concederti il ruolo IAM Amministratore Cloud Spanner (roles/spanner.admin) nel progetto.
Crea un'istanza con la console Google Cloud
Quando utilizzi Spanner per la prima volta, devi creare un'istanza, ovvero un'allocazione di risorse utilizzate dai database Spanner in quell'istanza.
Nella console Google Cloud , vai alla pagina Spanner.
Seleziona o crea un progetto Google Cloud , se non l'hai ancora fatto.
Nella pagina Spanner, fai clic su Crea un'istanza di cui è stato eseguito il provisioning.
Se hai già utilizzato Spanner, viene visualizzata la pagina Istanze di Spanner anziché la pagina di prodotto. Fai clic su Crea istanza.
Nella sezione Seleziona una versione, seleziona Standard, quindi fai clic su Continua.
Nella sezione Assegna un nome all'istanza, inserisci un Nome istanza, ad esempio
Test Instance.L'ID istanza viene compilato automaticamente in base al nome dell'istanza, ad esempio
test-instance. Se necessario, modificalo e poi fai clic su Continua.Nella sezione Configura l'istanza, in Scegli una configurazione, mantieni l'opzione predefinita Regionale e seleziona una località di configurazione dal menu a discesa.
La configurazione dell'istanza determina la posizione geografica in cui le istanze vengono archiviate e replicate.
Fai clic su Continua.
Nella sezione Configura la capacità di calcolo, per Seleziona unità, seleziona Unità di elaborazione (PU). In Scegli una modalità di scalabilità, mantieni Allocazione manuale e la Quantità predefinita di
1000unità di elaborazione.(Facoltativo) Nella sezione Backup, deseleziona la casella di controllo Abilita le pianificazioni dei backup predefiniti se non vuoi che vengano create pianificazioni dei backup predefiniti per questa istanza di test.
Fai clic su Crea.
La console Google Cloud mostra la pagina Panoramica dell'istanza che hai creato.
Crea un database
Nella console Google Cloud , vai alla pagina Istanze Spanner.
Fai clic sull'istanza che hai creato, ad esempio Test Instance.
Nella pagina Panoramica dell'istanza che si apre, fai clic su Crea database.
Per il nome del database, inserisci un nome, ad esempio example-db.
Seleziona un dialetto del database.
Per informazioni sul supporto di PostgreSQL e per indicazioni sulla scelta di un dialetto, consulta Interfaccia PostgreSQL. Lascia vuota la sezione Definisci il tuo schema (facoltativo). Lo schema viene definito in Spanner Studio nella sezione successiva di questa guida rapida.
Fai clic su Crea.
La console Google Cloud mostra la pagina Panoramica del database che hai creato.
Crea uno schema per il tuo database
Nel menu di navigazione, fai clic su Spanner Studio.
Nella pagina Spanner Studio, fai clic su Nuova scheda o utilizza la scheda Query senza titolo, quindi inserisci una delle seguenti query,
a seconda del dialetto del tuo database:GoogleSQL
CREATE TABLE Singers ( SingerId INT64 NOT NULL, FirstName STRING(1024), LastName STRING(1024), BirthDate DATE ) PRIMARY KEY(SingerId);PostgreSQL
CREATE TABLE Singers ( SingerId BIGINT PRIMARY KEY, FirstName VARCHAR(1024), LastName VARCHAR(1024), BirthDate TIMESTAMPTZ );Fai clic su Esegui.
Spanner esegue l'istruzione. Al termine, nella scheda Risultati viene visualizzato Aggiornamento completato.
Inserisci e modifica i dati
La console Google Cloud fornisce un'interfaccia per l'inserimento, la modifica e l'eliminazione dei dati.
Inserisci i dati
Nel riquadro Explorer, fai clic su Visualizza azioni per la tabella Singers, quindi su Inserisci dati.
Spanner apre una nuova scheda di query in Spanner Studio che contiene un'istruzione
INSERTdel modello.Modifica la clausola
VALUESdell'istruzioneINSERTdel modello per inserire una riga nella tabellaSingerse visualizzare il risultato dell'inserimento:GoogleSQL
-- Add new values in the VALUES clause in order of the column list. -- Each value must be type compatible with its associated column. INSERT INTO Singers (SingerId, FirstName, LastName, BirthDate) VALUES (1, -- type: INT64 'Marc', -- type: STRING(1024) 'Richards', -- type: STRING(1024) NULL -- type: DATE ) THEN RETURN SingerId, FirstName, LastName, BirthDate;PostgreSQL
-- Add new values in the VALUES clause in order of the column list. -- Each value must be type compatible with its associated column. INSERT INTO singers (singerid, firstname, lastname, birthdate) VALUES (1, -- type: bigint 'Marc', -- type: character varying 'Richards', -- type: character varying NULL -- type: timestamp with time zone ) RETURNING singerid, firstname, lastname, birthdate;Tieni presente che PostgreSQL converte i nomi delle colonne in lettere minuscole.
Fai clic su Esegui.
Spanner esegue l'istruzione. Al termine, la scheda Risultati mostra 1 riga inserita e i dati della riga inserita.
Nel riquadro Explorer, fai clic su Visualizza azioni per la tabella Singers, quindi su Inserisci dati.
Modifica la clausola
VALUESdell'istruzioneINSERT:GoogleSQL
-- Add new values in the VALUES clause in order of the column list. -- Each value must be type compatible with its associated column. INSERT INTO Singers (SingerId, FirstName, LastName, BirthDate) VALUES (2, -- type: INT64 'Catalina', -- type: STRING(1024) 'Smith', -- type: STRING(1024) NULL -- type: DATE ) THEN RETURN SingerId, FirstName, LastName, BirthDate;PostgreSQL
-- Add new values in the VALUES clause in order of the column list. -- Each value must be type compatible with its associated column. INSERT INTO singers (singerid, firstname, lastname, birthdate) VALUES (2, -- type: bigint 'Catalina', -- type: character varying 'Smith', -- type: character varying NULL -- type: timestamp with time zone ) RETURNING singerid, firstname, lastname, birthdate;Fai clic su Esegui.
Spanner esegue l'istruzione. Al termine, la scheda Risultati mostra 1 riga inserita e i dati della riga inserita.
Nel riquadro Explorer, fai clic su Visualizza azioni per la tabella Singers, quindi fai clic su Anteprima dati.
Fai clic su Esegui. Nella scheda Risultati vengono visualizzate le due righe della tabella
Singers.
Puoi anche inserire valori di stringa vuoti quando inserisci i dati.
Nel riquadro Explorer, fai clic su Visualizza azioni per la tabella Singers, quindi su Inserisci dati.
Spanner apre una nuova scheda di query in Spanner Studio che contiene l'istruzione
INSERTdel modello.Modifica la clausola
VALUESdell'istruzioneINSERTdel template:GoogleSQL
-- Add new values in the VALUES clause in order of the column list. -- Each value must be type compatible with its associated column. INSERT INTO Singers (SingerId, FirstName, LastName, BirthDate) VALUES (3, -- type: INT64 'Kena', -- type: STRING(1024) '', -- type: STRING(1024) NULL -- type: DATE ) THEN RETURN SingerId, FirstName, LastName, BirthDate;PostgreSQL
-- Add new values in the VALUES clause in order of the column list. -- Each value must be type compatible with its associated column. INSERT INTO singers (singerid, firstname, lastname, birthdate) VALUES (3, -- type: bigint 'Kena', -- type: character varying '', -- type: character varying NULL -- type: timestamp with time zone ) RETURNING singerid, firstname, lastname, birthdate;Fai clic su Esegui.
Spanner esegue l'istruzione. Al termine, la scheda Risultati mostra 1 riga inserita e i dati della riga inserita.
Tieni presente che il valore fornito per la colonna del cognome è una stringa vuota,
'', non un valoreNULL.Nel riquadro Explorer, fai clic su Visualizza azioni per la tabella Singers, quindi fai clic su Anteprima dati.
Fai clic su Esegui. La scheda Risultati mostra le tre righe della tabella
Singerse la riga con il valore della chiave primaria3ha una stringa vuota nella colonnaLastName.
Modifica dati
Fai clic su Nuova scheda per creare una nuova scheda di query, quindi inserisci la seguente istruzione
UPDATEper aggiornare la data di nascita per la riga con il valore della chiave primaria3:GoogleSQL
UPDATE Singers SET BirthDate='1961-04-01' WHERE SingerId=3 THEN RETURN SingerId, FirstName, LastName, BirthDate;PostgreSQL
UPDATE singers SET birthdate='1961-04-01 00:00:00 -8:00' WHERE singerid=3 RETURNING singerid, firstname, lastname, birthdate;Fai clic su Esegui.
Spanner esegue l'istruzione. Al termine, la scheda Risultati mostra 1 riga aggiornata e i dati della riga aggiornata.
Nel riquadro Explorer, fai clic su Visualizza azioni per la tabella Singers, quindi fai clic su Anteprima dati.
Fai clic su Esegui. La scheda Risultati mostra le righe della tabella
Singers, dove la riga aggiornata ora ha un valore per la data di nascita.
Elimina dati
Fai clic su Nuova scheda per creare una nuova scheda di query, quindi inserisci la seguente istruzione
DELETEper eliminare la riga con il valore della chiave primaria2:GoogleSQL
DELETE FROM Singers WHERE SingerId = 2;PostgreSQL
DELETE FROM singers WHERE singerid = 2;Fai clic su Esegui.
Spanner esegue l'istruzione. Al termine, la scheda Risultati mostra 1 riga eliminata. La tabella
Singersora contiene due righe.
Esegui una query nella console Google Cloud
Fai clic su Nuova scheda per creare una nuova scheda di query. Poi, inserisci la seguente query nell'editor di query:
GoogleSQL
SELECT * FROM Singers;PostgreSQL
SELECT * FROM singers;Fai clic su Esegui.
Spanner esegue la query. Al termine, la scheda Risultati mostra il risultato della query.
Complimenti! Hai creato correttamente un database Spanner ed eseguito un'istruzione SQL utilizzando l'editor di query.
Esegui la pulizia
Per evitare che al tuo account Google Cloud vengano addebitati costi aggiuntivi, elimina il database e l'istanza. La disattivazione dell'API Cloud Billing non interrompe gli addebiti. Quando elimini un'istanza, vengono eliminati tutti i database al suo interno.
Elimina il database
Nella console Google Cloud , vai alla pagina Istanze Spanner.
Fai clic sul nome dell'istanza contenente il database che vuoi eliminare, ad esempio Test Instance.
Fai clic sul nome del database che vuoi eliminare, ad esempio example-db.
Nella pagina Dettagli database, fai clic su delete Elimina database.
Conferma di voler eliminare il database inserendo il nome del database e facendo clic su Elimina.
Elimina l'istanza
Nella console Google Cloud , vai alla pagina Istanze Spanner.
Fai clic sul nome dell'istanza che vuoi eliminare, ad esempio Test Instance.
Fai clic su delete Elimina istanza.
Conferma di voler eliminare l'istanza inserendo il nome dell'istanza e facendo clic su Elimina.
Passaggi successivi
- Scopri di più sulle istanze.
- Informazioni sullo schema e sul modello dei dati di Spanner.
- Scopri di più sul Data Definition Language (DDL) di GoogleSQL.
- Scopri di più sui piani di esecuzione delle query.
- Scopri come utilizzare Spanner con C++, C#, Go, Java, Node.js, PHP, Python, Ruby, REST o gcloud.