mysql存储、function、触发器等实例
一.创建数据库&表
DROP DATABASE IF EXISTS security;
CREATE database security;
USE security;
CREATE TABLE users
(
id int(3) NOT NULL AUTO_INCREMENT,
username varchar(20) NOT NULL,
password varchar(20) NOT NULL,
PRIMARY KEY (id)
);
二.存储过程判断账号是否存在,不存在,插入用户信息,返回消息;存在,返回信息
#--存储过程判断账号是否存在,不存在,插入用户信息,返回消息;存在,返回信息
CREATE PROCEDURE users01 (
IN un VARCHAR (20),
IN pd VARCHAR (20),
OUT result nvarchar (50)
)
BEGIN IF EXISTS (
SELECT
*
FROM
users
WHERE
username = un
) THEN SET result = '对不起,账号已存在!'; ELSE
INSERT INTO users (username, PASSWORD)
VALUES
(un, pd); SET result = '恭喜,用户信息插入成功!'; END
IF; SELECT
result; END;
#--调用存储过程
CALL users01 (
'username01',
'password01' ,@result
);
#--删除存储过程
DROP PROCEDURE users01;
#--查看存储状态
SHOW PROCEDURE STATUS;
三.创建触发器
#---创建触发器
drop TRIGGER if exists test_tri;
CREATE TRIGGER test_tri BEFORE INSERT ON users FOR EACH row SET @num = @num + 1; #---实现触发器
SET @num = 0;
INSERT INTO users (username,password) VALUES ('username02','password02');
SELECT @num;
四.创建函数
#--创建方法/函数
DROP FUNCTION
IF EXISTS getusername; CREATE FUNCTION getusername (un VARCHAR(20)) RETURNS VARCHAR (300)
BEGIN
RETURN (
SELECT
PASSWORD
FROM
users
WHERE
username = un
); END; #--调用函数
SELECT
getusername ('username01');
五.视图
#--创建视图,查询视图
drop view if EXISTS test_view_1;
CREATE VIEW test_view_1 AS SELECT `username` FROM users;
select *from test_view_1;
六.删除数据
truncate TABLE users;
mysql存储、function、触发器等实例的更多相关文章
- Mysql数据库的触发器、存储引擎和存储过程
数据库的触发器 1.触发器 触发器是MySQL响应以下任意语句而自动执行的一条MySQL语句(或位于BEGIN和END语句之间的一组语句): DELETE,INSERT,UPDATE 我们可以监视某表 ...
- mysql触发器trigger 实例详解
mysql触发器trigger 实例详解 (转自 https://www.cnblogs.com/phpper/p/7587031.html) MySQL好像从5.0.2版本就开始支持触发器的功能 ...
- MySQL 触发器简单实例 - 转载
MySQL 触发器简单实例 触发器:可以更新,删除,插入触发器,不同种类的触发器可以存在于同一个表,但同种类的不能有多个.一个更新.一个删除是可以共存的. ~~语法~~ CREATE TRIGGER ...
- mysql用户创建触发器权限不足跟参数log_bin_trust_function_creators
问题描述 有业务反馈当前用户无法创建触发器和存储过程,让用户自己测试,该用户进行对表的增删改查等其他权限没有问题,这边用root用户查证,该用户拥有对当前库的所有权限,但是为什么就是创建不了触发器呢? ...
- mysql数据库分区功能及实例详解
分区听起来怎么感觉是硬盘呀,对没错除了硬盘可以分区数据库现在也支持分区了,分区可以解决大数据量的处理问题,下面一起来看一个mysql数据库分区功能及实例详解 一,什么是数据库分区 前段时间写过一篇 ...
- MySQl学习-——Mysql体系结构与Mysql存储引擎
Mysql体系结构与Mysql存储引擎 Mysql体系结构 mysql体系结构图:
- mysql数据库从删库到跑路之mysql:视图、触发器、事务、存储过程、函数
mysql:视图.触发器.事务.存储过程.函数 一.视图 视图是一个虚拟表(非真实存在),其本质是[根据SQL语句获取动态的数据集,并为其命名],用户使用时只需使用[名称]即可获取结果集,可以将该结果 ...
- 重新学习MySQL数据库3:Mysql存储引擎与数据存储原理
重新学习Mysql数据库3:Mysql存储引擎与数据存储原理 数据库的定义 很多开发者在最开始时其实都对数据库有一个比较模糊的认识,觉得数据库就是一堆数据的集合,但是实际却比这复杂的多,数据库领域中有 ...
- mysql 查询表,视图,触发器,函数,存储过程
1. mysql查询所有表: SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA = '数据库名' AND TAB ...
- 第 3 章 MySQL 存储引擎简介
第 3 章 MySQL 存储引擎简介 前言 3.1 MySQL 存储引擎概述 MyISAM 存储引擎是 MySQL 默认的存储引擎,也是目前 MySQL 使用最为广泛的存储引擎之一.他的前身就是我们在 ...
随机推荐
- [LeetCode] 3.Longest Substring Without Repeating Characters 最长无重复子串
Given a string, find the length of the longest substring without repeating characters. Example 1: In ...
- Java之整数运算
Java的整数运算遵循四则运算规则,可以使用任意嵌套的小括号.四则运算规则和初等数学一致.例如: public class Main { public static void main(String[ ...
- Spring boot后台搭建二为Shiro权限控制添加缓存
在添加权限控制后,添加方法 查看 当用户访问”获取用户信息”.”新增用户”和”删除用户”的时,后台输出打印如下信息 , Druid数据源SQL监控 为了避免频繁访问数据库获取权限信息,在Shiro中加 ...
- springboot统一返回json数据格式并配置系统异常拦截
本文链接:https://blog.csdn.net/syystx/article/details/82870217通常进行前后端分离开发时我们需要定义统一的json数据交互格式并对系统未处理异常进行 ...
- Automatically generating nice graphs at end of your Load Test with Apache JMeter and JMeter-Plugins
Update as of November 2017: Since JMeter 3.0, last version being 3.3, JMeter provides Out Of The Box ...
- 在Jenkins的pipeline项目中运行jmeter测试-教程
Jenkins 2.0的发布引入了一种新的项目类型 - Pipeline,以前只能通过插件获得.从Jenkins 2.0开始,Pipeline项目开箱即用. 与通常的“自由式”项目相比,管道构建具有几 ...
- 阿里的Netty知识点你又了解多少
前言 Netty 是一个可以快速开发网络应用程序的 NIO 框架,它大大简化了 TCP 或者 UDP 服务器的网络编程.Netty 的简易和快速开发并不意味着由它开发的程序将失去可维护性或者存在性能问 ...
- Python之 time 模块
时间模块的转换关系与方式: #!/usr/bin/env python # -*- coding:utf8 -*- import time # 时间戳 print('\ntime.time() --& ...
- D03-R语言基础学习
R语言基础学习——D03 20190423内容纲要: 1.导入数据 (1)从键盘输入 (2)从文本文件导入 (3)从excel文件导入 2.用户自定义函数 3.R访问MySQL数据库 (1)安装R ...
- vue 仿写微信公众号自定义菜单
先看效果图 代码参考 <template> <div> <!-- 公众号设置 --> <el-col :span="24" style=& ...