藉助 Gemini 編寫 SQL 程式碼

本文說明如何在 Spanner 中取得 AI 輔助,包括:

瞭解 Gemini for Google Cloud 如何使用您的資料。

本文適用於熟悉 Spanner、SQL 和資料分析的資料庫管理員和資料工程師。如果您是 Spanner 新手,請參閱「使用 Google Cloud 控制台建立及查詢資料庫」。

事前準備

  1. 選用步驟:設定 Gemini Code Assist。

  2. 如要完成本文中的工作,請確認您具備必要的 Identity and Access Management (IAM) 權限。

  3. 前往 Google Cloud 控制台的「Spanner」頁面。

    前往 Spanner

  4. 從清單中選取執行個體。

  5. 選取資料庫。

  6. 在導覽選單中,按一下「Spanner Studio」。

  7. 在 Spanner Studio 中,按一下「設定建議」settings_suggestion「Gemini Code Assist」按鈕,即可查看 Spanner 中的 Gemini 功能。

  8. 選取要啟用的 Gemini 功能,例如「註解轉查詢生成」。您可以自行選取及試用功能,不會影響專案中的其他協作者。

  9. 選用:如要跟著本文中的範例操作,請先按照「為資料庫建立結構定義」一文的說明建立 Singers 資料表。

如要在 Spanner 中停用 Gemini 功能,請重複上述步驟,然後取消選取要停用的 Gemini 功能。

必要的角色

如要取得完成本文中工作所需的權限,請要求管理員授予您專案的「Gemini for Google Cloud 使用者 」(roles/cloudaicompanion.user) IAM 角色。如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和組織的存取權」。

您或許也能透過自訂角色或其他預先定義的角色,取得必要權限。

使用自然語言提示詞生成 SQL 查詢

您可以提供自然語言註解 (或提示) 給 Gemini,要求根據結構定義生成查詢。舉例來說,您可以提示 Gemini 根據下列提示生成 SQL:

  • 「建立表格來追蹤顧客滿意度調查結果。」
  • 「在 Singers 資料表中新增名為 birthday 的日期欄。」
  • 「有多少歌手出生於 90 年代?」

如要在 Spanner 中透過 Gemini 輔助生成 SQL,請按照下列步驟操作:

  1. 前往 Google Cloud 控制台的「Spanner」頁面。

    前往 Spanner

  2. 從清單中選取執行個體。

  3. 選取資料庫。

  4. 在導覽窗格中,按一下「Spanner Studio」。「Explorer」窗格會顯示資料庫中的物件清單。

  5. 如要查詢資料庫,請按一下「新分頁」。確認已啟用 SQL 生成功能。

  6. 如要生成 SQL,請在查詢編輯器中輸入註解,開頭為 --,後面接著單行註解,然後按下 Return。

    舉例來說,如果您輸入提示詞 -- add a row to table singers 並按下 Return,Gemini 會生成類似下列內容的 SQL 程式碼:

    INSERT INTO Singers (SingerId, FirstName, LastName, BirthDate)
    VALUES (1, Alex, 'M.', '1977-10-16');
    

    如要繼續使用 Singers 資料表進行範例,請輸入提示詞 -- show all singers born in the 70s,然後 Gemini 會生成類似下列的 SQL:

    SELECT *
    FROM Singers
    WHERE Singers.BirthDate
    BETWEEN '1970-01-01' AND '1979-12-31'
    
    
  7. 查看生成的 SQL,然後進行下列任一操作:

    • 如要接受 Gemini 生成的 SQL,請按下 Tab,然後點選「執行」來執行建議的 SQL。
    • 如要編輯 Gemini 生成的 SQL,請按下 Tab,編輯 SQL,然後點選「執行」。
    • 如要關閉建議,請按下 Esc 鍵或繼續輸入。

說明查詢編輯器中的 SQL 陳述式

您可以使用 Gemini in Spanner,以自然語言說明 SQL 查詢。對於複雜或冗長的查詢,這項說明可協助您瞭解語法、基礎結構定義和業務情境。

  1. 前往 Google Cloud 控制台的「Spanner」頁面。

    前往 Spanner

  2. 從清單中選取執行個體。

  3. 選取資料庫。

  4. 在導覽窗格中,按一下「Spanner Studio」。

  5. 如要查詢資料庫,請按一下「New tab」(新分頁) 。

  6. 在查詢編輯器中貼上查詢。

  7. 反白選取要讓 Gemini 說明的查詢,然後按一下 astrophotography_mode「說明這項查詢」。

    SQL 說明會顯示在 Gemini Cloud Assist 窗格中。

使用 Gemini 修正查詢中的錯誤

Gemini 提供擴充功能,可協助您修正 Spanner 查詢中的錯誤,不必離開查詢編輯器。

Gemini 的 AI 輔助功能已整合至 Spanner Studio,可提供下列優點:

  • 使用查詢編輯器,在原始查詢旁顯示新查詢,並逐行比較兩者,找出建議的變更。
  • 醒目顯示原始查詢中可能導致問題的區隔,並以自然語言提供變更摘要。
  • 參考與查詢相關的確切錯誤訊息和結構定義資訊,提供準確且相關的修正建議。
  • 不必再依賴第三方一般用途 LLM,這類模型提供的協助可能不夠細緻,也可能導致資料面臨潛在安全風險。
  • 針對語法、結構定義和執行階段錯誤等常見問題,提供更快速有效率的疑難排解方式。

所需權限

開始前,請確認您具備下列權限:

使用 Gemini 修正查詢

如要使用 Gemini 的功能修正查詢中的特定錯誤,請完成下列步驟:

  1. 在查詢編輯器中執行查詢。

    如果查詢包含錯誤,編輯器底部的錯誤橫幅會顯示錯誤訊息。

  2. 按一下「修正」。

    查詢視窗的索引標籤會開啟差異編輯器 (「差異比較編輯器」),逐行比較現有查詢與建議的變更。查詢編輯器也會提供建議編輯內容的摘要。

  3. 查看查詢的建議變更,並視需要更新。

  4. 如要接受變更並執行新查詢,請按一下「接受並執行」。

限制

  • 這項功能只能在Google Cloud 控制台的 Spanner Studio 查詢編輯器中使用。
  • 適用目前的 Gemini 脈絡窗口限制。

後續步驟