如何在mysql摸仿oracle的sequence功能
1.先建立一個 Table
CREATE TABLE `seq_tablename` (
`id` int(11) NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8
2.塞入一個值到剛建立的Table中
Insert into seq_tablename (id) values (last_insert_id(id));
3.建立一個Function
DELIMITER $
CREATE FUNCTION test.seq_functionname() RETURNS int(11)
BEGIN
UPDATE test.seq_tablename SET id = LAST_INSERT_ID(id+1);
RETURN (SELECT LAST_INSERT_ID());
END;
$
DELIMITER ;
4.呼叫使用
select test.seq_functionname() from dual;
成功!
1.先建立一個 Table
CREATE TABLE `seq_tablename` (
`id` int(11) NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8
2.塞入一個值到剛建立的Table中
Insert into seq_tablename (id) values (last_insert_id(id));
3.建立一個Function
DELIMITER $
CREATE FUNCTION test.seq_functionname() RETURNS int(11)
BEGIN
UPDATE test.seq_tablename SET id = LAST_INSERT_ID(id+1);
RETURN (SELECT LAST_INSERT_ID());
END;
$
DELIMITER ;
4.呼叫使用
select test.seq_functionname() from dual;
成功!
Powered by ScribeFire.