Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL

ตัวแปรระบบ (System Variables) ต่อ ตัวแปรท้องถิ่น (Local Variables) ใน MySQL


ตัวแปรท้องถิ่น (Local Variable) มีขอบเขตการทำงานเพียงในชุดคำสั่งหรือบล็อกคำสั่งเท่านั้น เมื่อชุดคำสั่งหรือบล็อกคำสั่งนั้นเสร็จสิ้น ตัวแปรท้องถิ่นจะอยู่นอกขอบเขต (out of scope) ทันที

ตัวอย่างการใช้งาน

ตัวแปรท้องถิ่นมักใช้ใน Stored Procedure, Function เป็นต้น โดยประกาศด้วยคำสั่ง DECLARE

รูปแบบไวยากรณ์:

DECLARE yourVariableName dataType;

ส่วนตัวแปรระบบ (System Variables) หรือที่เรียกว่าตัวแปรสากล (Global Variables) มีขอบเขตการทำงานข้ามการเชื่อมต่อ (across connections) จนกว่าจะมีการรีสตาร์ทเซิร์ฟเวอร์ ตั้งค่าด้วยคำสั่ง GLOBAL

รูปแบบไวยากรณ์:

SET GLOBAL max_connections=value; OR SET @@global.max_connections=value;

หากทราบหมายเลขพอร์ต สามารถใช้ตัวแปรระบบ @@port ด้วยคำสั่ง select:

mysql> select @@port;

ผลลัพธ์

+--------+ | @@port | +--------+ | 3306   | +--------+ 1 row in set (0.00 sec)