這是我寫MySQL函數系列的第五篇文章。之前的都是基於MySQL數據庫的數據(數字、日期與時間、字符串)處理功能性函數,本篇則學習MySQL數據庫管理相關的函數。

【1】查看MySQL版本號

【結論】直接調用VERSION()函數--不需任何參數--就可以看到正在使用的MySQL版本號。【2】獲取當前登錄用戶名

【結論】有4種查看當前登錄MySQL用戶名的函數。【3】查看登錄用戶的連接次數

【結論】直接調用CONNECTION_ID()函數--不需任何參數--就可以看到當下連接MySQL服務器的連接次數,不同時間段該函數返回值可能是不一樣的【4】查看登錄用戶的連接信息

採用“SHOW PROCESSLIST”命令可以看到當前連接MySQL服務的用戶,其返回的類似一個表的查詢結果。

Id列:登錄MySQL的用戶標識,是系統自動分配的CONNECTION ID;

User列:顯示當前的“用戶名”;

Host列:顯示執行這個語句的IP,用來追蹤出現問題語句的用戶;

db列:顯示這個進程目前連接的是哪個數據庫;

Command列:顯示當前連接執行的命令,一般是休眠(Sleep)、查詢(Query)、連接(Connect);

Time列:顯示這個狀態持續的時間,單位是秒;

State列:顯示使用當前連接的SQL語句的狀態,包含有:Copying to tmptable、Sorting result、Sending data等狀態;

Info列:顯示當前SQL的內容,如果語句過長可能無法顯示完全。【5】查看當前用戶正在使用的數據庫名

【結論】使用SCHEMA()函數即可查詢當下用戶連接的數據庫名。【6】獲取字符串的字符集

【結論】使用CHARSET()函數可看到MySQL默認的是UTF-8的字符集。【7】獲取字符串的排列方式

【結論】COLLATION()函數返回值就是字符的排序方式,在我們定義MySQL表字段時,可以看到這樣的選項。

【8】獲取最後一個自動生成的ID值

用上圖的bbs_user表作爲案例,其中字段uID定義爲自增長。

在表沒有數據的情況下,看到LAST_INSERT_ID()返回值爲0。

往表中INSERT兩條數據:

再執行LAST_INSERT_ID()的返回值就是2。

總結

MySQL總共有8類系統信息函數;

其中2類需要傳遞參數,其他6類都不需要傳遞參數;

掌握好系統信息函數有助於更好地學習MySQL數據庫。

相關文章