The MQ Message and Correl (and Group) ID's aren't humanly readable, and I strongly suggest you keep them as binary, ie byte array (or convert to hex digits in a string or something like that if you really want a displayable version). The string contains AMQ , the beginning of the qmgr name, and some binary information (relating to date/time and a counter) for example. (A common problem seen in C applications are people strcpy'ing it, which truncates at the first null and never matches anything)
A better question here is what is your actual problem. You can browse, get message under cursor or if you know the msgid you can get by message id. You could get under syncpoint which doesnt remove it until you commit after the database update, or you could look at having the get in the same transaction as the database update... there's loads of options, it depends on what you need!