mysql数据库存储过程学习
1 用mysql客户端登入
2 选择数据库
mysql>use test
3 查询当前数据库有哪些存储过程
mysql>show procere status where Db='test'
4 创建一个简单的存储过程
mysql>create procere hi() select 'hello';
5 存储过程创建完毕,看怎么调用它
mysql>call hi();
显示结果 mysql> call hi();
+-------+
| hello |
+-------+
| hello |
+-------+
1 row in set (0.00 sec) Query OK, 0 rows affected (0.01 sec)
6 一个简单的储存过程就成功了
‘贰’ mysql 存储过程
.关于MySQL的存储过程
存储过程是数据库存储的一个重要的功能,但是MySQL在5.0以前并不支持存储过程,这使得MySQL在应用上大打折扣。好在MySQL 5.0终于开始已经支持存储过程,这样即可以大大提高数据库的处理速度,同时也可以提高数据库编程的灵活性。
MySQL存储过程的创建
(1).格式
MySQL存储过程创建的格式:CREATE PROCEDURE过程名([过程参数[,...]])
[特性...]过程体
这里先举个例子:
mysql>DELIMITER//
mysql>CREATEPROCEDUREproc1(OUTsint)
->BEGIN
->SELECTCOUNT(*)INTOsFROMuser;
->END
->//
mysql>DELIMITER;
- 注:
(1)这里需要注意的是DELIMITER //和DELIMITER ;两句,DELIMITER是分割符的意思,因为MySQL默认以";"为分隔符,如果我们没有声明分割符,那么编译器会把存储过程当成SQL语句进行处理,则存储过程的编译过程会报错,所以要事先用DELIMITER关键字申明当前段分隔符,这样MySQL才会将";"当做存储过程中的代码,不会执行这些代码,用完了之后要把分隔符还原。
(2)存储过程根据需要可能会有输入、输出、输入输出参数,这里有一个输出参数s,类型是int型,如果有多个参数用","分割开。
(3)过程体的开始与结束使用BEGIN与END进行标识。
‘叁’ mysql 导入导出数据库以及函数、存储过程的介绍
mysql常用导出数据命令:
1.mysql导出整个数据库
mysqlmp
-hhostname
-uusername
-ppassword
databasename
>
backupfile.sql
mysqlmp
-hlocalhost
-uroot
hqgr>
hqgr.sql
(如果root用户没用密码可以不写-p,当然导出的sql文件你可以制定一个路径,未指定则存放在mysql的bin目录下)
2.mysql导出数据库一个表
mysqlmp
-hhostname
-uusername
-ppassword
database
tablename>
导出的文件名
mysqlmp
-hlocalhost
-uroot
hqgr
t_ug_user>
user.sql
3.mysql导出一个数据库结构
mysqlmp
-hhostname
-uusername
-ppassword
-d
--add-drop-table
databasename>d:hqgrstructure.sql
-d
没有数据
--add-drop-table
在每个create语句之前增加一个drop
table
4.如果需要导出mysql里面的函数或者存储过程
mysqlmp
-hhostname
-uusername
-ppassword
-ntd
-R
databasename
>
backupflie.sql
mysqlmp
-hlocalhost
-uroot
-ntd
-R
hqgr
>
hqgr.sql
其中的
-ntd
是表示导出存储过程;-R是表示导出函数
mysql常用导入数据的命令:
1.mysql命令
mysql
-hhostname
-uusername
-
ppassword
databasename
<
backupfile.sql
2.source命令
mysql>source
backupfile.sql
‘肆’ mysql存储过程知识点难学吗
MySQL存储过程 一、存储过程 1.1 什么是存储过程 存储过程(Stored Procere)是在大型数据库系统中,一组为了完成特定功能的SQL 语句集,它存储在数据库中,一次编译后永久有效,用户通...,确实有一定的难度!
‘伍’ mysql用存储过程计算数据
创建:delimiter//createproceremy_add(INaint,INbint,OUTcint)beginifaisnullthenseta=0;endif;ifbisnullthensetb=0;endif;setc=a+b;end;//delimiter;查看:方法一:(直接查询,比较实用,查看当前自定义的存储过程)select`specific_name`frommysql.procwhere`db`='your_db_name'and`type`='procere'方法二:(查看数据库里所有存储过程+内容)showprocerestatus;方法三:(查看当前数据库里存储过程列表)selectspecific_namefrommysql.proc;方法四:(查看某一个存储过程的具体内容)selectbodyfrommysql.procwherespecific_name='your_proc_name';查看存储过程或函数的创建代码:showcreateprocereyour_proc_name;showcreatefunctionyour_func_name;调用:mysql>set@a=10;QueryOK,0rowsaffected(0.00sec)mysql>set@b=20;QueryOK,0rowsaffected(0.00sec)mysql>set@c=0;QueryOK,0rowsaffected(0.00sec)mysql>select@c;+------+|@c|+------+|0|+------+mysql>callmy_add(@a,@b,@c);QueryOK,0rowsaffected(0.00sec)mysql>select@a,@b,@c;+------+------+------+|@a|@b|@c|+------+------+------+|10|20|30|+------+------+------+1rowinset(0.00sec)删除dropprocereyour_proc_name;
‘陆’ mysql中的存储过程怎么使用
存储过程(Stored
Procere)是一组为了完成特定功能的SQL语句集功能是将常用或复杂的工作,预先用SQL语句写好并用一个指定名称存储起来,
以后需要数据库提供与已定义好的存储过程的功能相同的服务时,只需调用
call
存储过程名字,
即可自动完成命令。存储过程是由流控制和SQL语句书写的过程,这个过程经编译和优化后存储在数据库服务器中,可由应用程序通过一个调用来执行,而且允许用户声明变量
。同时,存储过程可以接收和输出参数、返回执行存储过程的状态值,也可以嵌套调用。
‘柒’ 谁能讲解下mysql存储过程的实现原理
我们常用的操作数据库语言SQL语句在执行的时候需要要先编译,然后执行,而存储过程(Stored Procere)是一组为了完成特定功能的SQL语句集,经编译后存储在数据库中,用户通过指定存储过程的名字并给定参数(如果该存储过程带有参数)来调用执行它。
一个存储过程是一个可编程的函数,它在数据库中创建并保存。它可以有SQL语句和一些特殊的控制结构组成。当希望在不同的应用程序或平台上执行相同的函数,或者封装特定功能时,存储过程是非常有用的。数据库中的存储过程可以看做是对编程中面向对象方法的模拟。它允许控制数据的访问方式。