當前位置:編程學習大全網 - 源碼破解 - sql中declare是什麽意思

sql中declare是什麽意思

sql中declare是聲明的意思,就是聲明變量的,這個壹般是用在函數和存儲過程中的。比如說,這個存儲過程是,只要妳把學號輸入進來,就能查詢這個學生的班級。那麽在這個存儲過程裏面, 學號就是參數。妳給什麽學號, 它就返回給妳相應的班級。又或者妳也可以做成, 只要妳輸入學號, 這個存儲過程就會將這個學生刪除。

mysql存儲過程中,定義變量有兩種方式:

1.使用set或select直接賦值,變量名以 @ 開頭.

例如:set @var=1;

可以在壹個會話的任何地方聲明,作用域是整個會話,稱為會話變量。

2.以 DECLARE 關鍵字聲明的變量,只能在存儲過程中使用,稱為存儲過程變量,例如:

DECLARE var1 ?INT DEFAULT 0; ?

主要用在存儲過程中,或者是給存儲傳參數中。

兩者的區別是:

在調用存儲過程時,以DECLARE聲明的變量都會被初始化為 NULL。而會話變量(即@開頭的變量)則不會被再初始化,在壹個會話內,只須初始化壹次,之後在會話內都是對上壹次計算的結果,就相當於在是這個會話內的全局變量。

在存儲過程中,使用動態語句,預處理時,動態內容必須賦給壹個會話變量。

例:

set @v_sql= sqltext;

PREPARE stmt FROM @v_sql; ?

EXECUTE stmt; ?

DEALLOCATE PREPARE stmt;

有的時候在查詢更新數據庫的時候,需要多條語句的查詢,因此需要多次修改

declare可以滿足多次執行,但數據只修改壹次。

declare?@local_variable data_type

DECLARE: 定義變量,變量第壹個字母是“@”

聲明時需要指定變量的類型,

可以使用set和select對變量進行賦值,

在sql語句中就可以使用@local_variable來調用變量?

聲明中可以提供值,否則聲明之後所有變量將初始化為NULL。

  • 上一篇:好的群名
  • 下一篇:哆啦A夢的生日是幾號?
  • copyright 2024編程學習大全網