易截截图软件、单文件、免安装、纯绿色、仅160KB

MySQL 5.0存储过程编程入门

首先看MySQL 5.0参考手册中关于创建存储过程的语法说明:
CREATE
    [DEFINER = { user | CURRENT_USER }]
    PROCEDURE sp_name ([proc_parameter[,...]])
    [characteristic ...] routine_body
   
proc_parameter:
    [ IN | OUT | INOUT ] param_name type
type:
    Any valid MySQL data type
characteristic:
    LANGUAGE SQL
  | [NOT] DETERMINISTIC
  | { CONTAINS SQL | NO SQL | READS SQL DATA | MODIFIES SQL DATA }
  | SQL SECURITY { DEFINER | INVOKER }
  | COMMENT 'string'
routine_body:
    Valid SQL procedure statement
 
如果你对MySQL还不太熟悉的话,单单看这个语法结构当然不足以进行MySQL存储过程编程。我之前基本都是使用MS SQL SERVER,所以以下记录我熟悉MySQL存储过程的过程,也是重点介绍MS SQL SERVER与MySQL区别较大的地方。
第一步,当然是写个Hello Word的存储过程,如下:
CREATE PROCEDURE phelloword()
BEGIN
  SELECT 'Hello Word!' AS F;
END;
将上面创建phelloword存储过程的语句拷到phpMyAdmin中执行,报如下错误:
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 3
在这个问题上我纠缠了很久,在MySQL的命令行工具中执行同样不成功,但是根据提示信息可以知道执行在 SELECT 'Hello Word!' AS F;处结束,后面的END;没有执行,这显然会导致错误。
这里需要选择以个分隔符,语法如下:DELIMITER //
分隔符是通知MySQL客户端已经输入完成的符号。一直都是用“;”,但是在存储过程中不行,因为存储过程中很多语句都需要用到分号。
因此上面的存储过程改为:
CREATE PROCEDURE ptest()
BEGIN
  SELECT 'Hello Word!' AS F;
END //
另外在phpMyAdmin中执行时,在Delimiter文本框中填写 //,这次存储过程即可创建成功。
第二步,写一个包括参数,变量,变量赋值,条件判断,UPDATE语句,SELECT返回结果集的完整的一个存储过程,如下:
CREATE PROCEDURE plogin
(
    p_username char(15),
    p_password char(32),
  &


相关文档:

mysql sql语句中的limit用法

1、select * from tablename <条件语句> limit 100,15
从100条记录后开始(不包括第100条记录)取出15条记录 (实际取出的是第 101-115条记录数据) 
2、select * from tablename <条件语句> limit 15
取出 前15条记录数据,limit 15相当于 limit 0,15 ......

php mysql回滚示例

首先,建InnoDB类型的表,才能支持事务
$handler = mysql_connect('localhost', '', '');
mysql_select_db('test');
mysql_query('SET AUTOCOMMIT=0'); // 设置为不自动提交查询
mysql_query('START TRANSACTION'); // 开始查询,这里也可以使用BEGIN
mysql_query("INSERT INTO users VALUES ('ccc')");
mysql_query( ......

MySQL给用户名添密码的五种方法(转载)

1.通过修改MYSQL数据库中MYSQL库的USER表 
       就用普通的UPDATE、INSERT语句就可以 
use mysql 
update user set Password=password('newpassword') where User='root'; 
flush privileges; 
(这个亲自实验过,可以执行!)
2.在命令行中使用如下命令 
&nbs ......

MYSQL 获取当前日期及日期格式

MYSQL 获取当前日期及日期格式
   获取系统日期:  NOW()
   格式化日期:    DATE_FORMAT(date, format)
               注:   date:时间字段
       ......

ubuntu9.04中安装配置php5 + MySql + Apache

   - -!   真不容易啊,弄了一天,终于搞定了!
  在ubuntu9.04下安装,首先要准备的东西很多,大部分是用来支持php的库,废话不多说,写这个也是为了便于我以后查看用,记忆不行,咳。。有需要的朋友也可以来去用。
  在ubuntu上安装,有一个好处就是有新立得这个软件,首先先安装mysql, ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号