免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1133 | 回复: 0
打印 上一主题 下一主题

开源项目----(1) mysql [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-03-08 11:28 |只看该作者 |倒序浏览
自从离开上一家公司之后,对开源的项目(openSource)的开发越来越感兴趣,之前是做BI,现在是BI和开源相结合,在外国的企业里面是非常看重开源的东西,但是在中国不行,中国人最怕就是出事,因为出事就是找责任,谁也不愿意背着责任上身.这也就是外国人的观念不同于中国.这篇主要是mysql的讲座,以后有时间继续增其它开源的东东:jasperReport+ireport,struts,spring,hibernate,ibatis等.

1.mysql的安装,进入
http://www.mysql.com/
  的网站,下载5.0版本的,5.0之前不要下了,因为不支持procedure和function.如果是windows操作系统有两种方法,一种是要安装,一种是不用安装,如果unix或linux系统,那就要看清楚哦.
2.windows的安装非常简单,unix的安装看INSTALL文件,那里有详细步骤.
3.装好之后,最好有一个administrator和Query brower,同样在mysql网站下载.不然只有doc窗口哦
4.下面着得讲function和procedure,也是直接能见到效果.

DELIMITER $$
DROP FUNCTION IF EXISTS `niegc`.`NextSequenceId` $$
CREATE FUNCTION "NextSequenceId"(sequenceName varchar(50)) RETURNS int(11)
BEGIN
  declare result,nextValue integer ;
select count(1) into nextValue from sys_identity_sequence a where a.sequence_name=sequenceName;
   if nextValue=0 then
     insert into sys_identity_sequence values(sequenceName,1);
    set result=1;
    else
       select next_value into nextValue from sys_identity_sequence a where a.sequence_name=sequenceName;
    update sys_identity_sequence a set a.next_value=a.next_value+1  where a.sequence_name=sequenceName;
   set result=nextValue;
   end if;
  return(Result);
END $$
DELIMITER ;

---------------解释
sequenceName varchar(50)) 是输入参数哦
RETURNS int(11) 是返回的类型,这一点和ORACLE有点不同
调用:
select NextSequenceId('aaaaa');


--今天到这里,回去继续







本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/15117/showart_82449.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP