スキーマツリー
サイドバーのパネルで、サーバの構造をブラウズします。
場所: サイドバー › スキーマツリー
SQLエディタの右側にあるスキーマパネルには、スキーマツリーが表示されます。表示と非表示は、エディタのツールバーにあるサイドバーボタンで切り替えます。データベースの横の矢印をクリックすると展開され、そのテーブルが表示されます。Calíopeはサーバ上のすべてのデータベースを、システムのもの(information_schema、performance_schema、mysql、sys)も含めて一覧表示します。CalíopeはDBAのためのアプリで、これらは正当なイントロスペクションの情報源だからです。
再読み込み。パネルのヘッダには更新ボタンがありません。再読み込みはコンテキストメニューにあり、データベースでは「テーブルを更新」、ツリー全体では「データベースリストを更新」を使います。iPadでは、ツリーを下に引っ張ってすべてを再読み込みすることもできます。
キーワード: データベース、テーブル、スキーマ、サイドバー、ツリー、スキーマツリー、information_schema、performance_schema、MYSQL、SYS
選択したテーブルの簡単なSELECTを開きます。
場所: サイドバー › ツリーのテーブル
スキーマツリーでテーブル名をクリックします。CalíopeはSELECT * FROM `db`.`table` LIMIT 50を自動的に生成し、SQLエディタのアクティブなタブに読み込みます(アクティブなタブがなければ新しいタブを開きます)。
キーワード: プレビュー、SELECT、クイックSELECT、テーブルを表示、テーブルのデータ
ワークスペースのサイドバーのパネルで、テーブルを名前で絞り込みます。
場所: サイドバー › スキーマツリー › 検索
スキーマツリーのパネルには、ヘッダにフィルタ欄があります。スキーマを表示するどのツールでも同じです。名前の一部を入力すると一覧が絞り込まれます。フィルタはデータベース名とオブジェクト名に同時に一致し、データベース名が一致すれば、そのオブジェクトがすべて表示されます。
フィルタは最後のキー入力から少し待ってから適用されるので、続けて入力してもキーを押すたびに一覧が並べ替わることはありません。消去すると、絞り込む前に展開していたデータベースが元に戻ります。
各データベースは最初に展開したときに問い合わせるので、まだ取得していないものはフィルタでは見つかりません。未探索のデータベースが残っているときは、フッタにその数が表示され、接続に負荷をかけすぎないよう順番に読み込む「すべてを検索」ボタンが出ます。
macOS:欄はパネルの上部にあります。Escapeで消去します。
iPad:欄はいつも同じ場所に表示され、下に引っ張るとツリーを再読み込みします。
キーワード: 検索、テーブルを絞り込む、テーブルを検索、ツリー、フィルタ、サイドバー、虫眼鏡
スキーマを表示するすべてのツールで、絞り込み、必要なときの読み込み、コンテキストメニューが同じです。
場所: サイドバー › スキーマツリー
Calíopeは同じツリーを描きます。データベースとオブジェクトのツリーが必要なすべてのツール、つまり「SQLエディタ」「バックアップ」「データ移行」「テーブルメンテナンス」「一括検索」「クエリービルダー」で同じものです。似ているだけではありません。同じコンポーネントなので、あるツールで覚えたことはどこでも通用します。
いつも使えるもの
- 名前での絞り込み(パネルのヘッダ)。データベース名とオブジェクト名に同時に一致し、データベース名が一致すれば、そのオブジェクトがすべて表示されます。最後のキー入力から少し待ってから適用され、消去すると展開していたデータベースが元に戻ります。
- 未探索のデータベースの通知。各データベースは最初に展開したときに問い合わせるので、まだ取得していないものはフィルタでは見つかりません。そうなったときは、足りないデータベースの数がフッタに表示され、それを読み込む「すべてを検索」ボタンが出ます。
- コンテキストメニュー。名前のコピー、完全修飾名のコピー、再読み込みがあります。ツールごとに独自の項目が加わり、たとえばSQLエディタはSELECT * FROM、データの読み込み、WHEREビルダーを加えます。
ツールごとに変わるもの
- 何を選べるか。SQLエディタとクエリービルダーでは、オブジェクトをタップして使います。バックアップ、移行、メンテナンス、一括検索はチェックボックスを使います。データベースのチェックボックスはその下をすべて選択または解除し、その右に、全体のうちいくつ選択されているかが表示されます。一括検索とクエリービルダーはヘッダで選んだひとつのデータベースの中で動くので、ツリーにはデータベースのノードがなく、そのオブジェクトが直接並びます。
- 何が表示されるか。メンテナンスと一括検索はテーブルだけを表示し(REPAIRはビューには効かず、ビューは置換の対象になりません)、SQLエディタはテーブルとビューを、バックアップと移行は5種類すべてをセクションに分けて表示します。
- いつ読み込むか。バックアップは開いたときにカタログ全体を取得します。何かに触れる前に、数と推定サイズが必要だからです。ほかのツールは、データベースを展開するたびにそれを読み込みます。
キーワード: ツリー、スキーマ、フィルタ、検索、コンポーネント、ツール、選択、チェックボックス
SQLを書かずに、WHEREのフィルタを視覚的に組み立てます。
場所: スキーマツリー › 右クリック › WHEREを作成…
「WHEREビルダー」を使うと、SQLを手で書かずにテーブルのフィルタ条件を組み立てられます。
起動の仕方:スキーマツリーで任意のテーブルのコンテキストメニューを開き(macOSでは右クリック、iPadでは長押し)、「WHEREを作成…」を選びます。
ビルダーの使い方:
1. ドロップダウンから列を選びます。
2. 演算子を選びます:=、!=、>、<、>=、<=、LIKE、NOT LIKE、IS NULL、IS NOT NULL、IN、NOT IN、BETWEEN。
3. 値を入力します(BETWEENなら両方の値)。
4. 「条件を追加」を押すと、ANDかORで結んだ条件をもう1つ追加できます。
使える操作:
- 「WHEREをコピー」 — WHERE句だけをクリップボードにコピーし、エディタに貼り付けられるようにします。
- 「SELECTを実行」 — SELECT * FROM table WHERE …を生成し、新しいSQLエディタのタブで実行します。
条件を追加するにつれて、パネルにSQLのプレビューがその場で表示されます。
キーワード: WHERE、ビルダー、フィルタ、条件、LIKE、BETWEEN、IN、IS NULL、SQLなし、ビジュアルフィルタ
Calíopeから実行したスキーマの変更(CREATE、ALTER、DROP)をすべて自動で記録します。
場所: SQLエディタ › DDL履歴
DDL履歴は、SQLエディタから実行して成功したデータ定義文をすべて自動で記録します:CREATE TABLE、ALTER TABLE、DROP TABLE、CREATE VIEW、DROP INDEXなど。
一般的なクエリーログと違い、DDL履歴は構造の変更の意味を記録したもので、データベースのスキーマの変更の監査や追跡に役立ちます。
開き方:
「SQLエディタ」で、「スキーマ」パネルのヘッダにある「DDL履歴」ボタン(チェックマーク付きの時計のアイコン)をクリックします。ビューアがワークスペースの上にシートとして開きます。
機能:
- 検索 — SQL文の中のテキストや接続名で絞り込みます。
- SQL文をコピー — 項目の右にあるコピーボタンをクリックすると、クリップボードにコピーされます。
- 更新 — 一覧を読み込み直します。
- 履歴を消去 — 上部のバーにあるゴミ箱のボタンで、すべての項目を削除します。削除する前に確認のダイアログが表示されます。
- 書き出す — iPad、iPhone、Apple Vision Proでは、絞り込んだ一覧をタブ区切り(TSV)のファイルとして保存します。
項目ごとに記録される情報:
- 実行した日時。
- 接続名(サーバのプロファイル)。
- DDL文の全文。
DDL履歴は、クエリーログと並んでSQLite3にローカルに保存されます。書き込まれるのは、設定の「成功したクエリーのログを有効にする」がオンのあいだだけです。
macOS、iPad、iPhone、Apple Vision Proで使えます。
キーワード: DDL、監査、履歴、CREATE TABLE、ALTER TABLE、DROP、スキーマ、変更、監査ログ、追跡、SQLite、消去