美文网首页
使用 MySQL 写了一个简单存储过程

使用 MySQL 写了一个简单存储过程

作者: 秋名山菜车手 | 来源:发表于2016-09-29 11:27 被阅读0次

昨天晚上,受朋友之托解决一个 sql 问题。
然而。。。虽然是科班出身,对于 mysql 用的并不多。
问题倒是不难,由于对环境不够熟悉,花去了我一点时间。
如何在一个字段中插入100个 0-10 的随机数?


  • 这个问题一看是要采用循环的,被提示到 存储过程 这个名词。
  • 那么,存储过程怎么建立,怎么调用呢?
  • 尼玛,科班不能怂啊。赶紧查查。

一、 Ubuntu 环境

昨天晚上回家没带 win7,win10环境有点麻烦,就开了 ubuntu。
没想到被 mysql 的用户名密码给折腾了一下。
控制台输入 mysql -uroot -p,提示输入密码,然后怎么都输不对。
懵逼几秒中...


好吧,马上来解决这个问题。

问题:Ubuntu 系统忘记了 mysql 的用户名密码怎么进入?

解答:让我们来谷度一下。

  • 查看 /etc/mysql/debian.cnf 文件,命令为 vi /etc/mysql/debian.cnf,哇嘎达!找到了用户名密码!
  • 命令行输入 mysql -u刚才的用户名 -p,然后输入密码。

二、 Window7 环境

为什么又切换环境了呢?昨晚太困睡着了,没解决完问题。
早上一上班赶紧来弄。
好的,现在 Windows 有图了!

废话少说,先进数据库 mysql -uroot -p

三、 命令行的 mysql 咋用?

既然生疏了,重新用用就好了嘛。
朋友让表名写 ceshibiao,字段名写 time

提醒一下,以下的 sql 语句都要记得加分号,否则会错哦,特殊的我会说。

  1. 切换数据库
  • mysql>use mysql;
  • 查看数据库可以用 mysql>show databases;
  1. 先来建个表(至于英文还是拼音的名称就不要在意了)
  • mysql>create table ceshibiao(time real);
  • 查看表可以用 mysql>show tables;
  • sql 的类型科普:integer 表示整型,real 表示浮点型,text 表示文本类型
建表过程

这样,mysql 基本的命令行使用就了解了。

四、存储过程咋写?

我写完以后的长这样:

简单的存储过程实现
  1. 先来解释一下这个 delimiter
- 这个词其实是 `分隔符` 的意思,mysql 中默认为分号,分号结尾,回车后自动执行。
- 如果写一句加一个分号立即执行了,那就没法写存储过程啊。
- 所以,`mysql>delimiter //` 这句表示,将`;`转换为`//`,只有收到 `//` 这个符号时,才认为指令结束。
- 这样,我们在存储过程内部就可以尽情地使用分号啦!
  1. 然后解释下取随机数的式子 ceiling(rand()*10))
- `ceiling` 和 `floor` 对应,前者表示向上取整(天花板嘛),后者表示向下取整(地板咯)。
- `rand()` 函数表示在 0 和 1 之间产生一个随机数。
- 所以,这个表达式的意思是,在 1-10 之间产生随机数。
  1. 至于数据库基本的 CURD 操作,这里就不用介绍了吧:)

五、 看一下运行结果

调用存储过程,直接 call 名称

调用存储过程

小功告成!

相关文章

  • 使用 MySQL 写了一个简单存储过程

    昨天晚上,受朋友之托解决一个 sql 问题。然而。。。虽然是科班出身,对于 mysql 用的并不多。问题倒是不难,...

  • MySQL存储过程一

    存储过程简单讲,就是为以后的使用而保存的一条或者多条MySQL语句的集合。 使用存储过程的的好处:简单、安全、高性...

  • mysql必知必会(23):存储过程

    一、存储过程 版本要求:MySQL5+ 存储过程,简单来说,就是为以后的使用而保存的一条或多条MySQL语句的集合...

  • 存储过程

    使用存储过程 1.存储过程 ​ 需要MySQL5---->> MySQL5添加了对存储过程的支持。 ​ 迄...

  • 存储过程

    创建存储过程 mysql: 执行存储过程 mysql: 使用OUT参数和INOUT参数: PREPARE和EXEC...

  • SQL基本语句(以MySQL为例)-- 第五部分

    19、使用存储过程MySQL的存储过程的语句跟这本书上的差太远了吧,以下参考自:MySQL存储过程教程 20、管理...

  • 2018-09-18

    springboot下使用存储过程也很简单。 1、首先Mysql下建立存储过程 2、并不需要改表,我的意思是不需要...

  • Springboot 存储过程

    springboot下使用存储过程也很简单。 1、首先Mysql下建立存储过程 2、并不需要改表,我的意思是不需要...

  • mysql存储过程使用

    每行n的指定字段都加上n*6天的时间

  • mysql 存储过程使用

    //转载 http://www.cnblogs.com/zhuawang/p/4185302.html 将下面的语...

网友评论

      本文标题:使用 MySQL 写了一个简单存储过程

      本文链接:https://www.haomeiwen.com/subject/eubkyttx.html