記事
· 2023年2月14日 4m read

irissqlcli(IRIS SQLの高度なターミナル):InterSystemsデベロッパーツールコンテスト2023入賞作品のご紹介

開発者の皆さん、こんにちは!

InterSystems デベロッパーツールコンテスト2023が開催され、21の応募作品の中から勝者が発表されました🏆

この記事では、世界のIRIS開発者の皆さんから注目を集めた作品をご紹介します。

最初は、Experts Nomination 第1位に輝いた @Dmitry Maslennikov さんの作品をご紹介します!

@Dmitry Maslennikov さんが解説されている記事(Welcome irissqlcli - advanced terminal for IRIS SQL)もあります。ぜひこちらもご覧ください。

@Dmitry Maslennikov さんは、IRIS SQL用の高度なターミナル irissqlcli を開発されました。

irissqlcli を使用すると、SQL記述時にSQL構文、関数、型、IRIS内テーブル名、カラム名に対する候補が表示されるため、SQL文がとても書きやすくなります。

ヘルプも充実しています。(\n でヘルプが表示されます)

接続先のテーブル一覧を取得する場合は「.tables」で取得できました。

 

また、以下のように記入時に入力候補が表示されます。Pygments を利用されているようで、シンタックスがハイライトされてきれいです。


​​irissqlcli の利用方法は3種類ありますが、この記事では、2種類をご紹介します。

その1:pipでirissqlcliをインストールして使う方法

Pythonがインストールされている環境で、以下実行します。

pip install -U irissqlcli

後は、irissqlcliコマンドを利用して、お手元のIRISに接続するだけです。

接続情報の指定は以下の通りです。

irissqlcli iris://IRISのユーザ名:パスワード@ホスト名:スーパーサーバポート/ネームスペース名

IRISのユーザ名がSuperUserで、パスワードがSYS、localhostの1972のスーパーサーバポートのIRISのUSERネームスペースに接続する方法は以下の通りです。

irissqlcli iris://SuperUser:SYS@localhost:1972

実際の画面は以下の通りです。(exitを入力すると元のプロンプトに戻りました)


​​​​

その2:irissqlcli-web用コンテナを利用する方法

Webターミナルで実行できるコンテナが提供されているので、dockerをインストールした環境で以下実行します。

docker run -d --name irissqlcli --restart always -p 7681:7681 caretdev/irissqlcli-web irissqlcli iris://_SYSTEM:SYS@host.docker.internal:1972/USER

上記実行で、caretdev/irissqlcli-web:latestのイメージがPullされます。(イメージのサイズは157MBでした。とても小さいです!)

イメージのPullが完了するとコンテナが開始され、コンテナのホストにインストールされているIRISのスーパーサーバポート1972番、USERネームスペースにアクセスします。

コンテナが正常に開始されたかについては、docker ps で確認できます。

>docker ps
CONTAINER ID   IMAGE                     COMMAND                  CREATED         STATUS        PORTS                    NAMES
40f556b8fdd8   caretdev/irissqlcli-web   "/usr/bin/tini -- tt…"   3 seconds ago   Up 1 second   0.0.0.0:7681->7681/tcp   irissqlcli

localhost:7681 にアクセスすると、以下のように irissqlcliのWebターミナル版が開きます。

コンテナを停止する場合は、以下の実行で停止できます。

docker stop irissqlcli

コンテナを削除したい場合は、以下の実行で削除できます。

docker rm irissqlcli

 

接続するIRISのスーパーサーバポートやネームスペースを変更したい場合は、docker run で指定している末尾の引数(irissqlcli以降)の接続情報を変更するだけで切り替えができます。

以下の実行例では、スーパーサーバーポート:51778、ネームスペース:TRAININGに接続しています。

>docker run -d --name irissqlcli --restart always -p 7681:7681 caretdev/irissqlcli-web irissqlcli iris://_SYSTEM:SYS@host.docker.internal:51778/training
fd5523695e10f75b0b1157cf001741fb5ddfae5f74b4f58a5a960f96f88f6006

プロンプトの右端に指定したネームスペースが表示されます。

 

どちらの方法も使用中IRISに追加のインストールが不要ですので、お手軽にご利用いただけると思いますlaugh

ぜひ皆さんのIRISでも試してみてください。また、返信欄に使った感想など、ぜひお寄せください!

ディスカッション (0)1
続けるにはログインするか新規登録を行ってください