【mysql】-內建函式和預處理語句
阿新 • • 發佈:2019-02-08
內建函式,如果能通過mysql內建函式對增刪改查的資料進行處理的話,就可以省去程式碼迴圈去一條一條的去設定了。
字串函式 | 函式註釋內容 |
concat(string2 [......]) | 連線字串 |
lcase(string2) | 轉換成小寫 |
ucase(string2) | 轉換成大寫 |
length(string) | string長度 |
ltrim(string2) | 去除前端空格 |
rtrim(string2) | 去除後端空格 |
repeat(string2,count) | 重複count |
replace(str,search_str,replace_str) | 在str中用replace_str替換search_str |
substring(str,position,[.length]) | 從str的position開始,取length個字元 |
space(count) | 生成count個空格 |
可以建立一個預處理語句,需要的時候,可以隨便修改該變數值,來通過該語句達到增刪改查的目的。
設定預處理函式:
mysql> prepare stmtl from "select * from test1 where id>?";
Query OK, 0 rows affected (0.00 sec)
Statement prepared
test1表資料內容:
mysql> select * from test1; +----+-------+ | id | name | +----+-------+ | 1 | user1 | | 2 | user2 | | 3 | user3 | | 4 | user4 | | 5 | user5 | | 6 | user6 | +----+-------+ 6 rows in set (0.01 sec)
設定變數值:
mysql> set @i=1;
Query OK, 0 rows affected (0.00 sec)
執行預處理函式:
mysql> execute stmtl using @i;
+----+-------+
| id | name |
+----+-------+
| 2 | user2 |
| 3 | user3 |
| 4 | user4 |
| 5 | user5 |
| 6 | user6 |
+----+-------+
5 rows in set (0.00 sec)
改變變數的值:
mysql> set @i=5; Query OK, 0 rows affected (0.00 sec)
再次執行預處理函式:
mysql> execute stmtl using @i;
+----+-------+
| id | name |
+----+-------+
| 6 | user6 |
+----+-------+
1 row in set (0.00 sec)
這樣就可以避免每次都寫一樣的SQL語句。方便對資料庫的增刪改查操作。