この説明では、Oracle データベースを使用していることを前提とし、以下のタスクを順番に説明していきます。
注 ROUTING_TABLE 表を作成してそれにアクセスする際には、以下の問題に注意してください。
始める前に: データベースを作成します。
以下のステップを実行します。
DROP TABLE ROUTING_TABLE;
CREATE TABLE ROUTING_TABLE (Variable1 varchar(32),Variable2 varchar(32),Variable3 varchar(32), queue_manager varchar(48),queue_name varchar(48));
INSERT INTO ROUTING_TABLE VALUES('SAMPLE_QUEUES', 'default','default', 'IB9QMGR', 'ROUTING.DEFAULT');
INSERT INTO ROUTING_TABLE VALUES('SAMPLE_QUEUES', 'TD', 'Montana', 'IB9QMGR', 'ROUTING.OUT1');
INSERT INTO ROUTING_TABLE VALUES('SAMPLE_QUEUES', 'DL', 'Corleone', 'IB9QMGR', 'ROUTING.OUT2');
INSERT INTO ROUTING_TABLE VALUES('SAMPLE_QUEUES', 'AA', 'Pacino', 'IB9QMGR', 'ROUTING.OUT3');
INSERT INTO ROUTING_TABLE VALUES('SAMPLE_QUEUES', 'RJ', 'DeNiro', 'IB9QMGR', 'ROUTING.OUT4');
INSERT INTO ROUTING_TABLE VALUES('SAMPLE_QUEUES', 'KF', 'Cobain', 'IB9QMGR', 'ROUTING.OUT5');
INSERT INTO ROUTING_TABLE VALUES('SAMPLE_QUEUES', 'JE', 'Matrix', 'IB9QMGR', 'ROUTING.OUT6');
INSERT INTO ROUTING_TABLE VALUES('SAMPLE_QUEUES', 'PL', 'Parker', 'IB9QMGR', 'ROUTING.OUT7');
INSERT INTO ROUTING_TABLE VALUES('SAMPLE_QUEUES', 'CJ', 'Kent', 'IB9QMGR', 'ROUTING.OUT8');
INSERT INTO ROUTING_TABLE VALUES('SAMPLE_QUEUES', 'MA', 'Douglas', 'IB9QMGR', 'ROUTING.OUT9');
INSERT INTO ROUTING_TABLE VALUES('SAMPLE_QUEUES', 'JD', 'Travolta', 'IB9QMGR', 'ROUTING.OUT10');
INSERT INTO ROUTING_TABLE VALUES('SAMPLE_QUEUES', 'HO', 'Ramsden', 'IB9QMGR', 'ROUTING.OUT11');
INSERT INTO ROUTING_TABLE VALUES('SAMPLE_QUEUES', 'KA', 'Stewart', 'IB9QMGR', 'ROUTING.OUT12');
INSERT INTO ROUTING_TABLE VALUES('SAMPLE_QUEUES', 'LS', 'Skywalker', 'IB9QMGR', 'ROUTING.OUT13');
INSERT INTO ROUTING_TABLE VALUES('SAMPLE_QUEUES', 'KD', 'Minogue', 'IB9QMGR', 'ROUTING.OUT14');
INSERT INTO ROUTING_TABLE VALUES('SAMPLE_QUEUES', 'PP', 'Pitstop', 'IB9QMGR', 'ROUTING.OUT15');
INSERT INTO ROUTING_TABLE VALUES('SAMPLE_QUEUES', 'JA', 'Reeve', 'IB9QMGR', 'ROUTING.OUT16');
INSERT INTO ROUTING_TABLE VALUES('SAMPLE_QUEUES', 'JA', 'Hetfield', 'IB9QMGR', 'ROUTING.OUT17');
INSERT INTO ROUTING_TABLE VALUES('SAMPLE_QUEUES', 'DT', 'Zuko', 'IB9QMGR', 'ROUTING.OUT18');
INSERT INTO ROUTING_TABLE VALUES('SAMPLE_QUEUES', 'KA', 'Braithwaite', 'IB9QMGR', 'ROUTING.OUT19');
sqlplus <uid>/<password> @routing2.sql
スクリプトの実行が終了するまで待ちます。 スクリプトを初めて実行すると、次のようなメッセージが表示されます。
ORA-00942: table or view does not existメッセージを無視します。メッセージが表示される理由は、スクリプトは ROUTING_TABLE という既存の表を新規表の作成前に除去しようとしますが、これまでスクリプトを実行したことがない場合は、スクリプトが既存の表を検出できないからです。
詳しくは、IBM Integration Bus の資料のデータベースへの ODBC 接続の使用可能化を参照してください。