Heim > Datenbank > MySQL-Tutorial > mysql模拟队列_MySQL

mysql模拟队列_MySQL

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
Freigeben: 2016-06-01 13:34:45
Original
1362 Leute haben es durchsucht

bitsCN.com

mysql模拟队列

 

Java代码  

-- 初始化数据  

DROP TABLE IF EXISTS t_msg_queues;  

CREATE TABLE t_msg_queues(  

    msg_id BIGINT UNSIGNED NOT NULL AUTO_INCREMENT,  

    msg_content VARCHAR(255) NOT NULL,  

    owner_thread_id INT NOT NULL DEFAULT -1,  

    PRIMARY KEY (msg_id)  

)ENGINE=INNODB DEFAULT CHARSET=utf8;  

SET @maxRandom = POWER(10,6);  

INSERT INTO `t_msg_queues`(`msg_content`)   

VALUES (CONCAT("cont_",CEIL(RAND()*@maxRandom))),(CONCAT("cont_",CEIL(RAND()*@maxRandom)))  

    ,(CONCAT("cont_",CEIL(RAND()*@maxRandom))),(CONCAT("cont_",CEIL(RAND()*@maxRandom)))  

    ,(CONCAT("cont_",CEIL(RAND()*@maxRandom))),(CONCAT("cont_",CEIL(RAND()*@maxRandom)))  

    ,(CONCAT("cont_",CEIL(RAND()*@maxRandom))),(CONCAT("cont_",CEIL(RAND()*@maxRandom)))  

    ,(CONCAT("cont_",CEIL(RAND()*@maxRandom))),(CONCAT("cont_",CEIL(RAND()*@maxRandom)))  

    ,(CONCAT("cont_",CEIL(RAND()*@maxRandom))),(CONCAT("cont_",CEIL(RAND()*@maxRandom)));  

      

-- 获取1条未处理的消息  

SET SESSION autocommit=1;  

SET @msgID = -1;  

UPDATE t_msg_queues SET owner_thread_id=GREATEST(CONNECTION_ID() ,(@msgID:=msg_id)*0)  

WHERE owner_thread_id=-1 ORDER BY msg_id LIMIT 1;  

-- 此时@msgID如果为-1,代表没有待处理的消息,否则就代表本次需要处理的msg_id  

 

bitsCN.com
Verwandte Etiketten:
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Aktuelle Ausgaben
So ändern Sie MySQL in MySQL
Aus 1970-01-01 08:00:00
0
0
0
MySQL-Startfehler unter Centos
Aus 1970-01-01 08:00:00
0
0
0
MySQL stoppt den Prozess
Aus 1970-01-01 08:00:00
0
0
0
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage