MySQL_存储过程MySQL存储过程★存储过程介绍★复合SQL语句★实用例子分析★搞笑的图片★存储过程介绍一、什么是存储过程?二、什么情况适合用存储过程?三、存储过程有哪些好处?四、存储过程的语法五、存储过程的权限★:(1)存储过程(2)函数(3)触发器(4):查一下以下的网页相关资源:存储过程用户论坛:http://forums./?98存储过程FAQ(Frequentlyaskedquestions)http://dev./doc/refman/-stored-?★存储过程介绍当多个用不同语言开发的应用程序或不同平台的应用程序需要去执行相同的数据库操作.(避免为各个程序都开发相同的功能)安全性要求较高时,使用存储程序和函数为一些公共的操作(程序员不是数据库管理员他可能不了解很多数据库的机制比如事务,.)减轻客户端应用程序的负担(让更多的操作由数据库服务器执行)什么情况适合用存储过程?★存储过程介绍1)提升性能由于客户端和服务器间传递的信息量少了2)存储过程允许你使用数据库上的丰富的库函数程序员减少编码量存储过程有哪些好处?★存储过程介绍CREATE[DEFINER={user|CURRENT_USER}]PROCEDUREsp_name([proc_parameter[,...]])[characteristic...]routine_bodyproc_parameter:[IN|OUT|INOUT]param_nametypetype:MENT'string'|LANGUAGESQL|[NOT]DETERMINISTIC|{CONTAINSSQL|NOSQL|READSSQLDATA|MODIFIESSQLDATA}|SQLSECURITY{DEFINER|INVOKER}routine_body:ValidSQLroutinestatement作业查一下其它删除存储过程与修改存储过程的语法AlterProcedure和DropProcedure存储过程的语法★存储过程介绍例子:delimiter//CREATEDEFINER='admin'@'localhost'ount_count()SQLSECURITYINVOKERBEGINSELECT'ounts:',COUNT(*);END//DEFINER参数代表定义这个存储过程的用户,只有super权限的用户才可以把DEFINER指定为自己以外的帐号SQLSECURITYINVOKER代表调用这个存储过程的帐户以调用者的权限来执行SQL语句,限制了没有权限的用户对此存储过程的使用,因为查询系统所有的帐号这个是需要许可的机密数据作业查询一下其它一些与存储过程相关的关键字的含义如:NotDeterministic等存储过程的语法★存储过程介绍存储过程如何调用呢?Call存储过程名(参数1,参数2…)问题:是否阿猫阿狗都可以随便调用存储过程呢?不,=:MySQL帐户有28个如下权限:select_priv,insert_priv,update_priv,delete_priv,create_priv,reload_priv,shutdown_priv,drop_priv,process_priv,file_priv,grant_priv,references_priv,index_priv,show_db_priv,alter_priv,super_priv,create_tmp_table_priv,lock_tables_priv,execute_priv,repl_slave_priv,repl_client_priv,create_view_priv,show_view_priv,create_routine_priv,alter_routine_priv,create_user_priv,event_priv,trigger_priv与权限相关的系统表:实表:,,:,Informat
MySQL 存储过程 来自淘豆网m.daumloan.com转载请标明出处.