磚SQL CLI

請注意

這篇文章介紹了磚SQL CLI,按原樣提供,不支持通過客戶技術支持渠道磚。問題和特性請求可以通過溝通問題頁麵的磚/ databricks-sql-cli在GitHub回購。

磚的SQL命令行接口(磚SQL CLI)使您能夠運行SQL查詢現有磚SQL倉庫從您的終端或Windows命令提示符,而不是位置如磚SQL編輯器或磚的筆記本。從命令行,得到效率特性,比如建議和語法高亮顯示。

需求

  • 至少有一個磚SQL倉庫創建一個倉庫如果你不已經有一個了。

  • 你的倉庫連接細節。具體地說,你需要服務器主機名HTTP路徑值。

  • 磚的個人訪問令牌。創建一個個人訪問令牌如果你不已經有一個了。

  • Python3.7或更高版本。檢查是否安裝了Python,運行命令python——版本從你的終端或命令提示符。(在一些係統上,您可能需要輸入python3相反)。安裝Python,如果你沒有它已經安裝了。

  • 皮普包安裝Python。新版本的Python安裝皮普默認情況下。檢查你是否有皮普安裝,運行該命令皮普——版本從你的終端或命令提示符。(在一些係統上,您可能需要輸入pip3相反)。pip安裝,如果你沒有它已經安裝了。

  • (可選)創建和管理Python的效用虛擬環境,如venv,virtualenv,或pipenv。虛擬環境有助於確保您使用正確的版本的Python和磚SQL CLI在一起。設置和使用虛擬環境超出了本文的範圍。有關更多信息,請參見創建虛擬環境

SQL CLI安裝磚

當你滿足需求,安裝磚SQL CLI包從Python包裝指數(PyPI)。您可以使用皮普安裝磚從PyPI通過運行SQL CLI包皮普安裝databricks-sql-clipython- m皮普安裝databricks-sql-cli

pip安裝databricks-sql-cli#還是……python - m pip安裝databricks-sql-cli

身份驗證

必須提供磚的磚SQL CLI的認證細節SQL倉庫,以便倉庫目標被稱為具有適當權限的憑證。你可以提供這些信息在幾個方麵:

  • dbsqlclirc設置文件的默認位置(或通過指定另一個設置文件通過——clirc選擇每次運行一個命令與磚SQL CLI)。看到設置文件

  • 通過設置DBSQLCLI_HOST_NAME,DBSQLCLI_HTTP_PATHDBSQLCLI_ACCESS_TOKEN環境變量。看到環境變量

  • 通過指定——主機名,——http-path,——訪問令牌選擇每次運行一個SQL CLI命令數據磚。看到命令選項

請注意

dbsqlclirc設置文件必須存在,即使你之前設置環境變量或指定前麵的命令選項。

當你運行SQL CLI磚,看起來按照以下順序進行身份驗證的細節,停止時,發現第一組細節:

  1. ——主機名,——http-path,——訪問令牌選項。

  2. DBSQLCLI_HOST_NAME,DBSQLCLI_HTTP_PATHDBSQLCLI_ACCESS_TOKEN環境變量。

  3. dbsqlclirc設置文件的默認位置(或另一種設置指定的文件——clirc選項)。

設置文件

使用dbsqlclirc設置文件為磚SQL CLI提供身份驗證細節磚SQL的倉庫,磚的SQL CLI首次運行,如下:

dbsqlcli

磚的SQL CLI為你創建一個設置文件,~ / .dbsqlcli / dbsqlclirc在Unix、Linux和macOS,% HOMEDRIVE % % HOMEPATH % \ .dbsqlcli \ dbsqlclirc% USERPROFILE % \ .dbsqlcli \ dbsqlclirc在Windows上。定製這個文件:

  1. 使用一個文本編輯器打開並編輯dbsqlclirc文件。

  2. 滾動到下一節:

    #【憑證】# host_name = " " # http_path = " # access_token = " "
  3. 把四個#字符,:

    1. 旁邊host_name,進入你的倉庫服務器主機名值之間的需求”“字符。

    2. 旁邊http_path,進入你的倉庫HTTP路徑值之間的需求”“字符。

    3. 旁邊access_token,輸入你的個人訪問令牌值之間的需求”“字符。

    例如:

    (憑證)host_name = " 12345678901234567.8.gcp.m.eheci.com " http_path = " / sql / 1.0 /倉庫/ 1 abc2d3456e7f890a”access_token =“dapi12345678901234567890123456789012”
  4. 保存dbsqlclirc文件。

或者,而不是使用dbsqlclirc文件的默認位置,您可以指定一個文件通過添加在一個不同的位置——clirc命令選項和替換文件的路徑。替換文件的內容必須符合前麵的語法。

環境變量

使用DBSQLCLI_HOST_NAME,DBSQLCLI_HTTP_PATH,DBSQLCLI_ACCESS_TOKEN環境變量為磚SQL CLI提供身份驗證細節磚SQL的倉庫,做到以下幾點:

設置環境變量隻有當前終端會話,運行以下命令。為所有終端會話,設置環境變量中輸入以下命令shell啟動文件,然後重啟你的終端。在以下命令,取代的價值:

  • DBSQLCLI_HOST_NAME你的倉庫的服務器主機名價值的需求。

  • DBSQLCLI_HTTP_PATH你的倉庫的HTTP路徑價值的需求。

  • DBSQLCLI_ACCESS_TOKEN與你個人的訪問令牌值要求。

出口DBSQLCLI_HOST_NAME=“12345678901234567.8.gcp.m.eheci.com”出口DBSQLCLI_HTTP_PATH=“/ sql / 1.0 /倉庫/ 1 abc2d3456e7f890a”出口DBSQLCLI_ACCESS_TOKEN=“dapi12345678901234567890123456789012”

設置環境變量隻有當前命令提示會話,運行以下命令,取代的價值:

  • DBSQLCLI_HOST_NAME你的倉庫的服務器主機名價值的需求。

  • DBSQLCLI_HTTP_PATH你的倉庫的HTTP路徑價值的需求。

  • DBSQLCLI_ACCESS_TOKEN和你個人的訪問令牌值需求。:

DBSQLCLI_HOST_NAME=“12345678901234567.8.gcp.m.eheci.com”DBSQLCLI_HTTP_PATH=“/ sql / 1.0 /倉庫/ 1 abc2d3456e7f890a”DBSQLCLI_ACCESS_TOKEN=“dapi12345678901234567890123456789012”

設置環境變量對所有命令提示會話,運行以下命令,然後重啟你的命令提示符,取代的價值:

  • DBSQLCLI_HOST_NAME你的倉庫的服務器主機名價值的需求。

  • DBSQLCLI_HTTP_PATH你的倉庫的HTTP路徑價值的需求。

  • DBSQLCLI_ACCESS_TOKEN與你個人的訪問令牌值要求。

對於setx DBSQLCLI_HOST_NAME“12345678901234567.8.gcp.m.eheci.com”對於setx DBSQLCLI_HTTP_PATH“/ sql / 1.0 /倉庫/ 1 abc2d3456e7f890a”對於setx DBSQLCLI_ACCESS_TOKEN“dapi12345678901234567890123456789012”

命令選項

使用——主機名,——http-path,——訪問令牌選項為磚SQL CLI提供身份驗證細節磚SQL的倉庫,做到以下幾點:

每一次你與磚的SQL CLI運行命令:

  • 指定——主機名選擇和你的倉庫服務器主機名價值的需求。

  • 指定——http-path選擇和你的倉庫HTTP路徑價值的需求。

  • 指定——訪問令牌選擇和個人的訪問令牌值要求。

例如:

dbsqlcli - e“SELECT *從違約。鑽石限製2”\——主機名“12345678901234567.8.gcp.m.eheci.com”\——http-path“/ sql / 1.0 /倉庫/ 1 abc2d3456e7f890a”\——訪問令牌“dapi12345678901234567890123456789012”

查詢資料

磚的SQL CLI使您能夠運行查詢在以下方麵:

  • 從一個查詢字符串

  • 從一個文件

  • 在read-evaluate-print循環(REPL)方法。這種方法提供了建議你類型。

查詢字符串

運行一個查詢字符串,使用- e其次是查詢選項,表示為一個字符串。例如:

dbsqlcli - e“SELECT *從違約。鑽石限製2”

輸出:

_c0,克拉、切割、顏色、清晰、深度、表,價格,x, y, z1,0.23,理想,E, SI2, 61.5, 55326, 3.95, 3.98, 2.432,0.21,溢價,E, SI1, 59.8, 61326, 3.89, 3.84, 2.31

開關輸出格式,使用——表格格式選項和值等美國信息交換標準代碼ASCII表格格式,例如:

dbsqlcli - e“SELECT *從違約。鑽石限製2”——表格格式ascii

輸出:

+ - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - - - - - - - - - - - - - + - - - - - - - - - - - - - + - - - - - - - - - - - - +|_c0|克拉|減少|顏色|清晰|深度||價格|x|y|z|+ - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - - - - - - - - - - - - - + - - - - - - - - - - - - - + - - - - - - - - - - - - +|1|023)|理想的|E|SI2|61年。5|55|326年|3.95|3.98點|2||2|0. 21|溢價|E|SI1|59。8|61年|326年|3.89|3|2。31|+ - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - - - - - - - - - - - - - + - - - - - - - - - - - - - + - - - - - - - - - - - - +

可用輸出格式的值的列表,請參閱的評論table_format設置在dbsqlclirc文件。

文件

一個文件,其中包含的SQL運行,使用- e選擇的路徑. sql文件。例如:

dbsqlcli - e my-query.sql

內容示例my-query.sql文件:

選擇*默認的鑽石限製2;

輸出:

_c0,克拉、切割、顏色、清晰、深度、表,價格,x, y, z1,0.23,理想,E, SI2, 61.5, 55326, 3.95, 3.98, 2.432,0.21,溢價,E, SI1, 59.8, 61326, 3.89, 3.84, 2.31

開關輸出格式,使用——表格格式選項和值等美國信息交換標準代碼ASCII表格格式,例如:

dbsqlcli - e my-query.sql——表格格式ascii

輸出:

+ - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - - - - - - - - - - - - - + - - - - - - - - - - - - - + - - - - - - - - - - - - +|_c0|克拉|減少|顏色|清晰|深度||價格|x|y|z|+ - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - - - - - - - - - - - - - + - - - - - - - - - - - - - + - - - - - - - - - - - - +|1|023)|理想的|E|SI2|61年。5|55|326年|3.95|3.98點|2||2|0. 21|溢價|E|SI1|59。8|61年|326年|3.89|3|2。31|+ - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - - - - - - - - - - - - - + - - - - - - - - - - - - - + - - - - - - - - - - - - +

可用輸出格式的值的列表,請參閱的評論table_format設置在dbsqlclirc文件。

REPL

進入read-evaluate-print循環(REPL)模式範圍默認數據庫,運行以下命令:

dbsqlcli

你也可以進入REPL模式限定給一個具體的數據庫,通過運行下麵的命令:

dbsqlcli <數據庫名稱>

例如:

dbsqlcli違約

退出REPL模式,運行以下命令:

退出

在REPL模式中,您可以使用以下字符和密鑰:

  • 使用分號(;結束一行)。

  • 使用F3多行模式開關。

  • 使用空格鍵顯示插入點建議,如果建議還沒有顯示出來。

  • 使用向上和向下箭頭導航的建議。

  • 使用右箭頭完成高亮顯示的建議。

例如:

dbsqlcli默認主機名:默認> SELECT * FROM鑽石極限2;+ - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - - - - - - - - - - - - - + - - - - - - - - - - - - - + - - - - - - - - - - - - +|_c0|克拉|減少|顏色|清晰|深度||價格|x|y|z|+ - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - - - - - - - - - - - - - + - - - - - - - - - - - - - + - - - - - - - - - - - - +|1|023)|理想的|E|SI2|61年。5|55|326年|3.95|3.98點|2||2|0. 21|溢價|E|SI1|59。8|61年|326年|3.89|3|2。31|+ - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - - - - - - - - - - - - - + - - - - - - - - - - - - - + - - - - - - - - - - - - +2時間:0.703s主機名:默認>退出

額外的資源