一.建立數據庫&表數據庫
1 DROP DATABASE IF EXISTS security; 2 CREATE database security; 3 USE security; 4 CREATE TABLE users 5 ( 6 id int(3) NOT NULL AUTO_INCREMENT, 7 username varchar(20) NOT NULL, 8 password varchar(20) NOT NULL, 9 PRIMARY KEY (id) 10 );
二.存儲過程判斷帳號是否存在,不存在,插入用戶信息,返回消息;存在,返回信息函數
1 #--存儲過程判斷帳號是否存在,不存在,插入用戶信息,返回消息;存在,返回信息 2 CREATE PROCEDURE users01 ( 3 IN un VARCHAR (20), 4 IN pd VARCHAR (20), 5 OUT result nvarchar (50) 6 ) 7 BEGIN 8 9 IF EXISTS ( 10 SELECT 11 * 12 FROM 13 users 14 WHERE 15 username = un 16 ) THEN 17 18 SET result = '對不起,帳號已存在!'; 19 20 21 ELSE 22 INSERT INTO users (username, PASSWORD) 23 VALUES 24 (un, pd); 25 26 27 SET result = '恭喜,用戶信息插入成功!'; 28 29 30 END 31 IF; 32 33 SELECT 34 result; 35 36 37 END; 38 #--調用存儲過程 39 CALL users01 ( 40 'username01', 41 'password01' ,@result 42 ); 43 #--刪除存儲過程 44 DROP PROCEDURE users01; 45 #--查看存儲狀態 46 SHOW PROCEDURE STATUS;
三.建立觸發器spa
1 #---建立觸發器 2 drop TRIGGER if exists test_tri; 3 CREATE TRIGGER test_tri BEFORE INSERT ON users FOR EACH row SET @num = @num + 1; 4 5 #---實現觸發器 6 SET @num = 0; 7 INSERT INTO users (username,password) VALUES ('username02','password02'); 8 SELECT @num;
四.建立函數code
1 #--建立方法/函數 2 DROP FUNCTION 3 IF EXISTS getusername; 4 5 CREATE FUNCTION getusername (un VARCHAR(20)) RETURNS VARCHAR (300) 6 BEGIN 7 RETURN ( 8 SELECT 9 PASSWORD 10 FROM 11 users 12 WHERE 13 username = un 14 ); 15 16 17 END; 18 19 #--調用函數 20 SELECT 21 getusername ('username01');
五.視圖blog
1 #--建立視圖,查詢視圖 2 drop view if EXISTS test_view_1; 3 CREATE VIEW test_view_1 AS SELECT `username` FROM users; 4 select *from test_view_1;
六.刪除數據get
truncate TABLE users;