开源项目----(1) mysql
时间:2006-03-08 来源:niegc
自从离开上一家公司之后,对开源的项目(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'); --今天到这里,回去继续
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'); --今天到这里,回去继续
相关阅读 更多 +