SQLServer的命令列工具-sqlcmd等..

來源:互聯網
上載者:User

和往常一樣,我們先使用 /?來看看sqlcmd的啟動參數們:

 

C:Documents and Settingschenxie.IFLYTEK>sqlcmd.exe /?

Microsoft (R) SQL Server 命令列工具

版本 9.00.1399.06 NT INTEL X86

著作權 (c) Microsoft Corporation。著作權所有,並保留一切權利。

 

用法: Sqlcmd            [-U 登入 ID]          [-P 密碼]

 [-S 伺服器]            [-H 主機名稱]          [-E 可信串連]

 [-d 使用資料庫名稱] [-l 登入逾時值]     [-t 查詢逾時值]

 [-h 標題]           [-s 資料行分隔符號]      [-w 螢幕寬度]

 [-a 資料包大小]        [-e 回顯輸入]        [-I 允許引號識別項]

 [-c 命令結束]            [-L[c] 列出伺服器[清除輸出]]

 [-q "命令列查詢"]   [-Q "命令列查詢" 並退出]

 [-m 錯誤層級]        [-V 嚴重層級]     [-W 刪除尾隨空格]

 [-u unicode 輸出]    [-r[0|1] 發送到 stderr 的訊息]

 [-i 輸入檔案]         [-o 輸出檔案]        [-z 新密碼]

 [-f <字碼頁> | i:<字碼頁>[,o:<字碼頁>]] [-Z 建立密碼並退出]

 [-k[1|2] 刪除[替換]控制字元]

 [-y 可變長度類型顯示寬度]

 [-Y 固定長度類型顯示寬度]

 [-p[1] 列印統計資訊[冒號格式]]

 [-R 使用用戶端地區設定]

 [-b 出錯時中止批處理]

 [-v 變數 = "值"...] [-A 專用管理串連]

 [-X[1] 禁用命令、啟動指令碼、環境變數[並退出]]

 [-x 禁用變數情況]

 [-? 顯示文法摘要]

 

呵呵,和osql沒什麼變化吧。下面我將仔細解釋每個參數和它們的使用方法。

 

 

 

下面是這些參數的詳細解釋(注意,區分大小寫):

1. 首先是登陸方面的:

如果 –U  -P –S都是空,比如直接在CMD下打 sqlcmd或sqlcmd.exe將使用本地賬戶嘗試串連本機資料庫

-U login_id

使用者登入 ID。登入 ID 區分大小寫。

如果 -U 選項和 -P 選項均未指定,sqlcmd 將嘗試使用 Microsoft Windows 身分識別驗證模式進行串連。身分識別驗證基於運行 sqlcmd 的使用者的 Windows 帳戶。

如果 -U 選項與 -E 選項(在本主題的後面詳細說明)一起使用,將建置錯誤訊息。如果 –U 選項後有多個參數,將建置錯誤訊息並退出程式。

 

-P password

使用者指定的密碼。密碼是區分大小寫。如果未使用 -P 選項,並且未設定 SQLCMDPASSWORD 環境變數,則 sqlcmd 會提示使用者輸入密碼。如果在命令提示字元的末尾使用 -P 選項而不帶密碼,sqlcmd 將使用預設密碼 (NULL)。

通過向控制台列印密碼提示,可以顯示密碼提示,如下所示:

Password:

隱藏使用者輸入,這意味著將不會顯示任何輸入的內容,游標保留原位不動。

如果將 -P 選項與 -E 選項一起使用,將建置錯誤訊息。

如果 –P 選項後有多個參數,將建置錯誤訊息並退出程式。

-E

使用可信串連而不是使用者名稱和密碼登入 SQL Server。預設情況下,sqlcmd 將使用可信串連選項。

-E 選項會忽略可能的使用者名稱和密碼環境變數設定,例如 SQLCMDPASSWORD。如果將 -E 選項與 -U 選項或 -P 選項一起使用,將建置錯誤訊息。

-S server_name [ instance_name ]

指定要串連的 SQL Server 的執行個體。它設定 sqlcmd 指令碼變數 SQLCMDSERVER

指定 server_name 將串連到該伺服器中 SQL Server 的預設執行個體。指定 server_nameinstance_name 將串連到該伺服器中 SQL Server 的具名執行個體。如果未指定伺服器,sqlcmd 將串連到本機電腦上的 SQL Server 的預設執行個體。從網路上的遠端電腦執行 sqlcmd 時,此選項是必需的。

如果在啟動 sqlcmd 時未指定使用者名稱,SQL Server 將檢查並使用 SQLCMDSERVER 環境變數。如果未指定伺服器,則使用工作站名稱。

-H wksta_name

工作站的名稱。此選項設定 sqlcmd 指令碼變數 SQLCMDWORKSTATION。該工作站名稱在 sys.processes 目錄檢視的 hostname 列中列出,並可使用預存程序 sp_who 返回。如果未指定此選項,則使用當前電腦名稱。此名稱可用來標識不同的 sqlcmd 會話。

 

2. 串連設定:

 

-l time_out

指定 sqlcmd 到 OLE DB 提供者的登入逾時時間。此選項設定 sqlcmd 指令碼變數 SQLCMDLOGINTIMEOUT。登入 sqlcmd 的預設逾時時間為 8 秒。登入逾時設定必須是介於 0 和 65534 之間的數字。如果提供的值不是數值或不在此範圍內,sqlcmd 將建置錯誤訊息。該值為 0 時,則允許無限制等待。

-t time_out

   指定命令(或 SQL 陳述式)逾時的時間。此選項設定 sqlcmd 指令碼變數 SQLCMDSTATTIMEOUT。如果未指定 time_out 值,則命令將不會逾時。登入 time_out 必須是介於 1 和 65535 之間的數字。如果提供的值不是數值或不在此範圍內,則 sqlcmd 將建置錯誤訊息。

 

註:實際的逾時值可能會與指定的 time_out 值相差幾秒。幾秒,不是幾毫秒,別看錯了。

 

-d db_name

   啟動 sqlcmd 時發出一個USE db_name 語句。此選項設定 sqlcmd 指令碼變數 SQLCMDDBNAME。它指定初始資料庫。如果資料庫不存在,則建置錯誤訊息且 sqlcmd 退出

 

-A

   使用專用管理員連接 (DAC) 登入到 SQL Server。此類型串連用於排除伺服器故障。這隻適用於支援 DAC 的伺服器。如果 DAC 不可用,sqlcmd 會建置錯誤訊息,然後退出。很好的東西,下面會詳細介紹。

 

 

-I

將 SET QUOTED_IDENTIFIER 串連選項設定為 ON。預設情況下,將其設定為 OFF。這與SQL Server的預設設定不同,SQL是設定預設是ON的。

 

小帖士:QUOTED_IDENTIFIER,分隔字元使用設定。

SET QUOTED_IDENTIFIER 為 ON(預設值)時,由雙引號分隔的所有字串都被解釋為物件識別碼。(比如 Select * from [USER],或Select * from “USER”,這裡USER就被視為非系統保留字)

因此,加引號的標識符不必符合 Transact-SQL 標識符規則。它們可以是保留關鍵字,並且可以包含 Transact-SQL 標識符中通常不允許的字元。不能使用雙引號分隔文字字串運算式,而必須用單引號括住文字字串。如果單引號 (') 是文字字串的一部分,則可以由兩個單引號 (") 表示。當對資料庫中的對象名使用保留關鍵字時,SET QUOTED_IDENTIFIER 必須為 ON。

當 SET QUOTED_IDENTIFIER 為 OFF 時,運算式中的文字字串可以由單引號或雙引號分隔。如果文字字串由雙引號分隔,則可以在字串中包含嵌入式單引號,如省略符號。

在SQL操作的時候具體,預設值為ON還是OFF請查SQLServer2005的線上手冊,上面有詳細描述。

 

 

 

3.顯示設定:

 

-h headers

指定要在欄位標題之間列印的行數。系統預設為每組查詢結果列印一次標題。此選項設定 sqlcmd 指令碼變數 SQLCMDHEADERS。使用 -1 指定不能列印標題。如果使用 -1,則在參數和設定之間沒有空格(可以是 -h-1,但不能是 -h -1)。任何無效的值都將導致 sqlcmd 建置錯誤訊息,然後退出。

 

-w column_width

 

指定用於輸出的螢幕寬度。此選項設定 sqlcmd 指令碼變數 SQLCMDCOLWIDTH。該列寬必須是介於 8 和 65536 之間的數字。如果指定的列寬不在此範圍內,則 sqlcmd 將建置錯誤訊息。預設寬度為 80 個字元。在輸出行超出指定的列寬時,將轉到下一行。

-e

將輸入指令碼列印到標準輸出裝置 (stdout)。

-r [ 0 | 1]

將錯誤訊息輸出重新導向到螢幕 (stderr)。如果未指定參數或指定參數為 0,則僅重新導向嚴重層級為 17 或更高的錯誤訊息。如果指定參數為 1,則將重新導向所有訊息輸出(包括 PRINT)。

-k [ 1 | 2 ]

     刪除輸出中的所有控制字元,例如定位字元和分行符號。這會在返回資料時保留列格式。如果指定了 1,則控制字元被一個空格替代。如果指定了 2,則連續的控制字元被一個空格替代。

-p [ 1 ]

    列印每個結果集的效能統計資訊。以下樣本是效能統計資訊的格式:

Network packet size (bytes): n

x xact[s]:

Clock Time (ms.): total       t1 avg       t2 (t3 xacts per sec.)

其中

x = SQL Server 處理的事務數。

t1 = 所有事務的總時間。

t2 = 單個事務的平均時間。

t3 = 每秒的平均事務數。

所有時間均以毫秒錶示。

如果指定了選擇性參數 1,則統計資訊的輸出格式為以冒號分隔的格式,此格式可以由指令碼輕鬆匯入到試算表中或進行處理。

如果選擇性參數是除 1 之外的任何值,則將建置錯誤並且 sqlcmd 將退出。

-o output_file

標識從 sqlcmd 接收輸出的檔案。

如果指定了 -u,則 output_file 以 Unicode 格式儲存。包含空格的檔案名稱必須用引號引起來。如果檔案名稱無效,將產生一個錯誤訊息,並且 sqlcmd 將退出。sqlcmd 不支援向同一檔案並發寫入多個 sqlcmd 進程。檔案輸出將損壞或不正確。

 

 

-u

    指定無論 input_file 為何種格式,output_file 都以 Unicode 格式進行儲存。

 

 4.查詢配置:

-q " query "

    啟動 sqlcmd 時執行查詢,但是在查詢完成時不退出 sqlcmd。將查詢用引號引起來,如下例所示。(建議不要使用這個,如果是寫批處理命令或是程式自動執行,請用下面那個)

在命令提示字元下,鍵入(不要在查詢中使用 GO 終止符):

sqlcmd -d AdventureWorks -q "SELECT FirstName, LastName FROM Person.Contact WHERE LastName LIKE 'Whi%'"

如果與此選項同時指定了 -b,sqlcmd 在遇到錯誤時將退出。

-Q " query "

    執行查詢並立即退出 sqlcmd,類上。(建議不要使用這個,除非是寫批處理命令或是程式自動執行)

    如果與此選項同時指定了 -b,sqlcmd 在遇到錯誤時將退出。

 

-i input_file[,input_file2...]

     標識包含一批 SQL 陳述式或預存程序的檔案。可以指定要按順序讀取和處理的多個檔案。檔案名稱之間不要使用任何空格。sqlcmd 將首先檢查所有指定的檔案是否都存在。如果有一個或多個檔案不存在,sqlcmd 將退出。

 

-b

     指定錯誤發生時 sqlcmd 退出並返回一個 DOS ERRORLEVEL 值。當 SQL Server 錯誤訊息的嚴重層級高於 10 時,返回給 DOS ERRORLEVEL 變數的值為 1;否則返回的值為 0。如果除 -b 選項外還設定了 -V 選項,則當嚴重等級低於使用 -V 設定的值時,sqlcmd 將不報告錯誤。命令提示字元批次檔可以測試 ERRORLEVEL 的值並適當處理錯誤。sqlcmd 不對嚴重層級 10 報告錯誤(資訊性訊息)。

如果 sqlcmd 指令碼包含錯誤的注釋、語法錯誤或缺少指令碼變數,則返回的 ERRORLEVEL 為 1。

 

-V

    指定 sqlcmd 報告的最低嚴重層級。Transact-SQL 指令碼中發生錯誤時,僅當嚴重層級大於或等於由 -V 開關指定的值時,才報告嚴重層級。如果嚴重層級低於該值,則報告 0。命令提示字元批次檔可以測試 ERRORLEVEL 的值並適當處理錯誤。

 

-s col_separator

    指定資料行分隔符號字元。預設為空白格。此選項設定 sqlcmd 指令碼變數 SQLCMDCOLSEP。若要使用對作業系統有特殊含義的字元(如 and 字元 (&) 或分號 (;)),請將該字元用雙引號 (") 引起來。資料行分隔符號可以是任意 8 位字元。

 

-c cmd_end

     指定批處理終止符。預設情況下,通過單獨在一行中鍵入“GO”來終止命令並將其發送到 SQL Server。重設批處理終止符時,不要使用對作業系統具有特殊意義的 Transact-SQL 保留關鍵字或字元,即便它們前面有反斜線也是如此。

 

-R

   設定 SQL Server OLE DB 提供者,使其在將貨幣、日期和時間資料轉換為字元資料時使用用戶端地區設定。

 

5.參數設定:

 

-a packet_size

    需要不同大小的資料包。該選項設定 sqlcmd 指令碼變數 SQLCMDPACKETSIZE。packet_size 必須是介於 512 和 32767 之間的值。如果指令碼的兩個 GO 命令之間包含大量 SQL 陳述式,則使用較大的資料包可以提高指令碼執行的效能。我們可以請求更大的資料包,但如果請求被拒絕,sqlcmd 將預設為伺服器預設的資料包大小。

 

-L [ c ]

     列出在本地配置的伺服器和在網路上廣播的伺服器的名稱。此參數不能與其他參數結合使用。可以列出的伺服器的最大數目是 3000。如果伺服器列表由於緩衝區大小而被截斷,則會顯示錯誤訊息。

     如果指定選擇性參數 c,則輸出不會顯示 Servers: 標題列,且列出的每個伺服器行都沒有前置空格。這稱為清除輸出。清除輸出可以提高指令碼語言的處理效能。

     注意:由於網路廣播的本質,sqlcmd 可能無法及時接收到所有伺服器的響應,因此,每次調用此選項時,根據人品的不同,返回的伺服器列表可能會有所不同。 :-)

 

-m error_level

     自訂錯誤訊息的顯示。顯示高於指定嚴重層級的錯誤的訊息編號、狀態和錯誤層級。而不顯示嚴重層級低於指定層級的錯誤的資訊。用 -1 指定與訊息一起返回所有標題,即使是資訊性的訊息。如果指定了 -1,則在參數和設定之間不能有空格(例如,可以是 -m-1,但不能是 -m -1)。

     此選項設定 sqlcmd 指令碼變數 SQLCMDERRORLEVEL。

-W

   此選項刪除列的尾隨空格。在準備要匯出到另一應用程式的資料時,請將此選項和 -s 選項結合使用。不能與 -y 或 -Y 選項結合使用。

 

-f < codepage > | i: < codepage > [ < , o: < codepage > ]

     指定輸入和輸出字碼頁。字碼頁頁碼是指定已安裝的 Windows 字碼頁的數值。

-y display_width

   限制為較大的可變長度資料類型返回的字元數:

·         varchar(max)

·         nvarchar(max)

·         varbinary(max)

·         xml

·         UDT(使用者定義的資料類型)

·         text

·         ntext

·         image

     根據實現,UDT 可以使用固定的長度。如果此固定長度 UDT 的長度比 display_width 短,則返回的 UDT 值將不會受影響。但是,如果此長度比 display_width 長,則輸出將會被截斷。如果 display_width 為 0,則輸出將會在 1-MB 處截斷。

     使用 -y 0 選項時要特別注意,因為根據返回的資料量大小,此選項可能導致伺服器和網路上出現嚴重性能問題。

-Y display_width

限制為以下資料類型返回的字元數:

·         char

·         nchar

·         varchar(n),其中 1<n<8000

·         nvarchar(n) 其中 1<n<4000

·         sql_variant

-v var=" value"[ var="value"...]

    建立可用於 sqlcmd 指令碼中的 sqlcmd 指令碼變數。如果該值包含字元,則將其用引號引起來。可以指定多個 var="values" 值。如果指定的任何值中有錯誤,sqlcmd 會建置錯誤訊息,然後退出。

-X [ 1 ]

    從批次檔執行 sqlcmd 時,將禁用可能危及系統安全的命令。禁用的命令仍然可以被識別;sqlcmd 發出警告訊息並繼續。如果指定了選擇性參數 1,則 sqlcmd 將建置錯誤訊息,然後退出。使用 -X 選項時,將禁用以下命令:

·         ED

·         !! command

    如果指定 -X 選項,它會阻止將環境變數傳遞給 sqlcmd。同時該選項還會阻止執行通過使用 SQLCMDINI 指令碼變數指定的啟動指令碼。

-x

    導致 sqlcmd 忽略指令碼變數。當指令碼中包含多個 INSERT 語句,並且這些語句可能包含格式與常規變數,如 $(variable_name) 相同的字串時,這一選項很有用。

 

在瞭解完sqlcmd 參數之後,我們載來看看sqlcmd的命令,使用:Help來看看一共有那些命令

1> :Help

:!! [<命令>]

 - 在 Windows 命令 shell 中執行命令。

:connect server[instance] [-l 逾時值] [-U 使用者 [-P 密

 - 串連到 SQL Server 執行個體。

:ed

 - 編輯當前語句緩衝或上次執行的語句緩衝。

:error <目標>

 - 將錯誤輸出重新導向到檔案、stderr 或 stdout。

:exit

 - 立即退出 sqlcmd。

:exit()

 - 執行語句緩衝;不傳回值,直接退出。

:exit(<查詢>)

 - 執行指定的查詢;返回數字結果。

go [<n>]

 - 執行語句緩衝(n 次)。

:help

 - 顯示此命令列表。

:list

 - 輸出語句緩衝的內容。

:listvar

 - 列出設定的 sqlcmd 指令碼變數。

:on error [exit|ignore]

 - 在執行批處理或 sqlcmd 命令時應對錯誤的措施。

:out <檔案名稱>|stderr|stdout

 - 將查詢輸出重新導向到檔案、stderr 或 stdout。

:perftrace <檔案名稱>|stderr|stdout

 - 將計時輸出重新導向到檔案、stderr 或 stdout。

:quit

 - 立即退出 sqlcmd。

:r <檔案名稱>

 - 將檔案內容追加到語句緩衝之後。

:reset

 - 放棄語句緩衝。

:serverlist

 - 列出本地 SQL Server 和網路中的 SQL Server。

:setvar {variable}

 - 刪除 sqlcmd 指令碼變數。

:setvar <變數> <值>

 - 設定 sqlcmd 指令碼變數。

Sqlcmd的命令都是以”:”符號開始的(除了GO,打:GO系統會認為是向緩衝區添加了一段字元:GO),雖然有些命令可以省略”:”,但是為了安全與方便記憶,實用的時候推薦大家還是打上”:”把,辛苦多打下一個”:”不會引發任何血案的,我保證!^_^

 

下面是每個命令的解釋:

[:] !!< command>

    執行作業系統命令,在指令碼中常見,極大的增強了互動效能。

    當然,偶爾還為忘記了(或是偷懶想copy)IO檔案名稱的程式員們提供DIR命令。

下面是例子

3> !!dir

磁碟機 C 中的卷沒有標籤。

卷的序號是 044A-C8D9 

C:Documents and Settingschenxie.IFLYTEK 的目錄

2006-12-29 08:46    <DIR>          .

2006-12-29 08:46    <DIR>          ..

2006-12-29 08:46                 0 awstats.myvirtualhostname

2006-12-29 08:46                 0 awstats.myvirtualhostname.html

2006-12-30 16:23    <DIR>          Favorites

2006-12-02 11:49               664 intlname.ols

2006-12-31 09:10    <DIR>          My Documents

2006-12-11 14:37    <DIR>          VSWebCache

2006-10-27 15:14    <DIR>          WINDOWS

2006-12-04 17:39    <DIR>          「開始」菜單

2006-12-30 14:09    <DIR>          案頭

             3 個檔案            664 位元組

             8 個目錄 7,063,961,600 可用位元組 

:Connect server_name[instance_name] [-l timeout] [-U user_name [-P password]]

-關閉當前的串連,串連到另一個的 SQL Server執行個體。不指定timeout將使用SQLCMDLOGINTIMEOUT變數值。

:ed

 - 編輯當前語句緩衝或上次執行的語句緩衝。

   召喚編輯器來編輯緩衝中的語句,預設為Edit.com。可以通過修改SQLCMDEDITOR 環境變數來改變編輯器(比如 SET SQLCMDEDITOR=notepad)。

另外提一句:不知道什麼原因,我使用Edit.com之後回到sqlcmd,所有的中文都無法正確顯示了具體原因也找不到,鬱悶,期待高手。

:Error <filename>|STDERR|STDOUT

 - 將錯誤輸出重新導向到檔案.

    若該檔案已經存在,則將其截斷為零位元組。若該檔案不可訪問(由於許可權或其他原因),將不會切換輸出,也不會將輸出發送到上次指定的目標或預設目標。預設情況下,錯誤輸出將發送到 stderr流。

: EXIT[ (statement) ]

 - 立即退出 sqlcmd。:EXIT用法很有講究,實用的時候請注意

:EXIT
不執行批處理就立即退出,無傳回值。

:EXIT( )
執行批處理後退出,無傳回值。

:EXIT(query)
執行包括查詢的批處理,返回查詢的結果後退出。

   Statement的值是將第一個結果行的第一列轉換為 4 位元組的整數(長整型)。SQL Server 保留了介於 -1 到 -99 之間的傳回值;sqlcmd 定義了以下附加傳回值-100:選擇傳回值前遇到錯誤。-101:選擇傳回值時找不到行。-102:選擇傳回值時發生轉換錯誤。

在編寫自動指令碼的時候:EXIT很實用。

go [<n>]

 - 執行語句緩衝(n 次)。樣本如下:

1> select count(*) from TestTab;
2> go 3
-----------
 410
(1 行受影響)
-----------
410
(1 行受影響)
-----------
 410
(1 行受影響)
1>

:list

 - 輸出語句緩衝的內容。Go過之後,語句即被清掉,:list顯示為空白。樣本如下

1> select count(*) from TestTab;
2> :list
select count(*) from LCS_BIZOBJECT;

2> go
-----------
410
 (1 行受影響)
1> :list
1>

:listvar

- 列出設定的 sqlcmd 指令碼變數,方便使用sqlcmd。

:on error [exit|ignore]

- 在執行批處理或 sqlcmd 命令時應對錯誤的措施。
設定在指令碼或批處理執行過程中發生錯誤時要執行的操作。
預設情況下,會列印錯誤訊息。

Exit: sqlcmd 退出,並顯示相應的錯誤值。
Ignore: sqlcmd 會忽略錯誤,並繼續執行批處理或指令碼。

:out < filename >|stderr|stdout

 -將所有查詢結果重新導向到 filename 指定的檔案、stderr 或 stdout。
預設情況下,輸出將發送到 stdout。

:perftrace < filename >|stderr|stdout

 - 將計時輸出重新導向到檔案、stderr 或 stdout。
預設情況下,輸出將發送到 stdout。

:quit

 - 立即退出 sqlcmd。

:r < filename >

 - 將檔案內容追加到語句緩衝之後。

:reset

 - 放棄語句緩衝。

:serverlist

 - 列出網路中的 SQL Server。

:setvar {variable}

 - 刪除 sqlcmd 指令碼變數。

:setvar < variable > <value>

 - 設定 sqlcmd 指令碼變數。

   如果使用 :Setvar 定義的變數和某個環境變數同名,則使用 :Setvar 定義的變數優先。變數名中不能包含空白字元。如果指令碼變數的字串值中含有空格,請用引號將該值引起來。否則將被華麗的無視。
如果未指定指令碼變數的值,則將刪除該指令碼變數。
變數名不能與Variant 運算式(例如 $(var))具有相同的形式

 


相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.