1. 程式人生 > >mysql-函數,視圖

mysql-函數,視圖

procedure view

存儲過程函數

-- 設置數據庫的結束符為 ///
mysql> delimiter ///
-- 創建過程函數test
mysql> create procedure test(a int)
    -> begin
    -> select * from student where id=a;
    -> end
    -> ///
Query OK, 0 rows affected (0.01 sec)

mysql> delimiter ;

--調用函數 test
mysql> call test(2);
+----+------+-----+-----+
| id | name | age | sex |
+----+------+-----+-----+
|  2 | lisi |  31 | 0   |
+----+------+-----+-----+
1 row in set (0.00 sec)

Query OK, 0 rows affected (0.00 sec)

-- 查看函數 test 的狀態信息
mysql> show procedure status like ‘test‘ \G       
*************************** 1. row ***************************
                  Db: shop
                Name: test
                Type: PROCEDURE
             Definer: root@localhost
            Modified: 2018-04-24 12:42:43
             Created: 2018-04-24 12:42:43
       Security_type: DEFINER
             Comment: 
character_set_client: utf8
collation_connection: utf8_general_ci
  Database Collation: utf8_general_ci
1 row in set (0.00 sec)

-- 刪除函數 test
mysql> drop procedure test;  

視圖

-- 創建視圖
mysql> create view test_view(name,age) as select name,age from student where id =5;
Query OK, 0 rows affected (0.00 sec)

-- 視圖調用 
mysql> select * from test_view;
+--------+-----+
| name   | age |
+--------+-----+
| tianqi |  42 |
+--------+-----+
1 row in set (0.01 sec)

-- 查看視圖的創建過程
mysql> show create view test_view \G

mysql-函數,視圖