设为首页 加入收藏

TOP

c / c + + 调用mysql存储过程(一)
2014-03-10 13:04:14 来源: 作者: 【 】 浏览:458
Tags:   调用 mysql 存储 过程

  mysql5.0支持存储过程后,现在mysql6.0Alpha 版本也是可用的。6.0不仅支持大型数据库(如 oracle和如此的大多数功能(如存储过程、视图、触发器、作业等,并修复了这些功能存在的bug,6.0.1 版还支持windows 64 位 和表空间。

  C/c + + 要访问 mysql,只是一些简单的常用操作,c嵌入式简单查询、插入、更新和其他操作的使用可以。这些语句作为业务复杂、完整的业务功能需要的sql 操作,很大一部分是嵌入c 代码c 代码会导致更多和更复杂的不清楚这一次自然的存储过程来封装所有数据库逻辑思想,简单地通过调用mysql 存储的过程 c 接口可以实现他们的目标大大减少工作量的c 程序员,但也容易处理前端业务逻辑和数据库处理逻辑分离。在这里只调用存储的过程c 语言的简单方法。

  1、首先创建一个表用于存储用户信息

  Create table student(

  id int auto_increment,

  name varchar(20),

  age tinyint,

  remark varchar(50),

  primary key(id)

  );

  2、插入几条用户信息

  Insert into student values(1,"zhouys",90, "");

  commit;

  3、查看刚刚插入的用户信息

  mysql> select * from student;

  +------+-----------+------+----------+

  | id | name | age | remark |

  +------+-----------+------+----------+

  | 1 | zhouys | 90 | |

  +------+-----------+------+-----------+

  1 row in set (0.00 sec)

  mysql>

  4、创建存储过程

  delimiter //

  create procedure querystudent(

  in in_id int , #0- Character ID 1-digital id

  #

  out out_ret int, # Returns the result

  out out_name varchar(20), # First name

  out out_age int # Age

  )

  label_a:begin

  declare v_name varchar(20) ;

  declare v_age tinyint ;

  # Parameters determine

  if (in_id<=0) then

  set out_ret=-1; #id error

  leave label_a;

  end if;

  SELECT name,age into v_name,v_age from student where't found

  leave label_a;

  end if;

  set out_ret=0;

  set out_name=v_name;

  set out_age=v_age;

  end;

  //

  delimiter ;

   

首页 上一页 1 2 3 4 5 下一页 尾页 1/5/5
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇用字符串实现1000以内阶乘 下一篇USACO 2009 Feb ..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: