翻譯:SET Variable(已提交到MariaDB官方手冊)

駿馬金龍發表於2018-03-22

本文為mariadb官方手冊:SET Variable的譯文。

原文:https://mariadb.com/kb/en/set-variable/
我提交到MariaDB官方手冊的譯文:https://mariadb.com/kb/zh-cn/set-variable/

語法

SET var_name = expr [, var_name = expr] ...

儲存程式stored programs中的SET語句是普通SET語句的一個擴充套件功能。 變數引用的時候,可以引用儲存程式內部、全域性系統變數或使用者自定義變數。

儲存程式中的SET語句是作為已有的SET語法的一部分實現的。 這允許擴充套件SET a = x,b = y,...的語法,其中可以混合不同的變數型別(本地宣告的變數,全域性系統變數和會話系統變數,使用者定義的變數)。也允許組合區域性變數和僅對系統變數有意義的一些選項; 在這種情況下,雖然會識別選項,但卻會忽略它。

SET可為本地變數local variables和使用者自定義變數user-defined variables賦值。

當通過查詢返回的列值來為多個變數賦值時,應優先考慮使用SELECT INTO

當為多個變數賦相同值時,可以使用函式LAST_VALUE( )

以下是一個使用者自定義變數的賦值示例:

SET @x = 1;

//譯者補充示例:SET為多種型別的變數賦值,注意當其中一個變數賦值失敗時整個語句將全部失敗
SET @x = 1, SESSION sql_mode = ``;
SET GLOBAL sort_buffer_size = 1000000, SESSION sort_buffer_size = 1000000;
SET @@global.sort_buffer_size = 1000000, @@local.sort_buffer_size = 1000000;
SET GLOBAL max_connections = 1000, sort_buffer_size = 1000000;

相關文章