
目次
Notionでリレーションを作るとき、相手のデータベースにも列が増えることをご存じでしょうか。
自分のデータベースに「取引先」という列を1つ足しただけのつもりが、取引先のデータベース側にも何かが増えている。他の人が管理しているデータベースなら、なおさら気になります。
この挙動を実際に確かめました。設定を切り替えて戻すと、列が溜まっていきます。
相手のデータベースに、列が増えます
まず前提から確認します。
つなぎ方に2種類あります
リレーションには、片方からだけ見える作り方と、両方から見える作り方があります。
| 作り方 | 相手のデータベース |
|---|---|
| 片方からだけ | 何も増えない |
| 両方から | 列が1つ増える |
実際に両方を作って、相手のデータベースの列を数えました。片方からだけの場合は、相手は「名前」だけのまま。両方から見える設定にすると、そこに列が1つ追加されていました。
つなぐと、逆側にも入ります
両方から見える設定で、案件の行から取引先を指定しました。取引先の行を確認すると、そちらにも案件が入っています。
逆も同じでした。取引先の行から案件を指定すると、案件のほうにも反映されます。どちらから操作しても、両方が更新されます。
自動で付く名前が、英語で長い
増える列を見て、まず気になったのが名前でした。
「Related to 案件DB (取引先)」のような名前になります
自動で付けられる名前は、英語の接頭辞に、自分のデータベース名と列名を並べたものでした。
日本語で運用していても、この部分は英語になります。そして長い。データベース名が長ければ、列名はもっと長くなります。
放っておくと、表の見た目が崩れます
列名が長いと、表の見出しが横に伸びます。スマートフォンで見たときには、ほぼ読めません。
しかも、増えたのは自分のデータベースではないので、気づきにくい。相手のデータベースを普段開かない人なら、何ヶ月も放置されます。
名前は変えられます
変更を試したところ、問題なく通りました。「関連する案件」のような分かりやすい名前に変えられます。
変えたあと、自分のデータベース側から見た情報も確認しました。そちらの参照先の名前も、自動で新しい名前に変わっています。つながりが切れる心配はありません。
両方から見える設定で作ったら、その場で相手側の列名を直す。これを習慣にしておくと、あとで困りません。
単方向に戻しても、相手の列は残る
ここから、今回いちばん伝えたい部分です。
設定を戻しても、列は消えませんでした
両方から見える設定を、片方からだけに戻しました。相手のデータベースの列がどうなるかを見ます。
残っていました。自分側の設定は片方向に変わっているのに、相手のデータベースには列がそのまま置かれています。
つながりの先がない列になります
残った列は、もう自分のデータベースと同期していません。見た目は普通のリレーションの列ですが、片方向に変えた時点で関係が切れています。
相手のデータベースを見ている人からは、何の列なのか分からなくなります。名前を直していなければ、英語の長い名前だけが残ります。
往復すると、列が二重になる
さらに、戻してみました。
新しい列が、もう1つ増えました
片方向に変えたあと、もう一度「両方から見える」設定に戻します。すると相手のデータベースに、新しい列がもう1つ追加されました。
| 操作 | 相手のデータベースの列 |
|---|---|
| 両方から見える設定で作る | 1つ増える |
| 片方向に戻す | そのまま残る |
| もう一度、両方から見える設定に | さらに1つ増える(合計2つ) |
前に作った列を再利用してはくれません。毎回、新しい列が作られます。
しかも、値が分かれます
ここが実害の出るところです。2つの列を確認すると、古いほうにはつながりが入っていて、新しいほうは空でした。
見た目の似た列が2つ並んでいて、片方にしかデータが入っていない。どちらが正しいのか、相手のデータベースを見ている人には分かりません。
設定を何度か試行錯誤しただけで、これが起きます。作っているときは自分のデータベースを見ているので、気づきません。
図にすると、こう溜まります
相手を消しても、つながりは残る
最後に、相手のデータベースを消した場合も見ました。
列も値も残りました
つないでいた相手のデータベースを、ゴミ箱に入れます。そのうえで自分のデータベースを確認しました。
リレーションの列は残っていて、行に入っていたつながりもそのままです。件数も変わりません。
行き先がゴミ箱にあるだけで、関係そのものは保たれています。戻せば元どおりになるという点も、他の挙動と同じです。
ここは素直な作りです
相手を消したら列が壊れる、というほうが困ります。つながりが残っているなら、相手を戻すだけで復旧できます。
ただし、ゴミ箱にあるものの中身は読めません。つながりの件数は見えても、その先に何があるかは分からない状態になります。
どちらで作るかの決め方
ここまでを踏まえて、使い分けを整理します。
1. 迷ったら、片方向から始める
相手のデータベースを汚さないのが、片方向の利点です。あとから両方向に変えられるので、最初は片方向で作るのが安全です。
逆方向から見る必要が本当にあるか、使ってみてから判断できます。実際、案件から取引先を見るだけで足りる場面は多いです。
2. 両方向にするのは、逆から探す場面があるときだけ
取引先のページを開いて、その取引先の案件を一覧したい。こういう見方をするなら両方向です。
逆から見る予定がないのに両方向にすると、相手のデータベースに使わない列が増えるだけになります。
3. 両方向にしたら、その場で列名を直す
自動で付く名前は英語で長いので、必ず直します。あとでやろうと思うと、忘れます。
直しても自分側とのつながりは切れません。作った直後の30秒でできる作業です。
4. 他の人のデータベースにつなぐなら、先に言う
これがいちばん大事かもしれません。両方向でつなぐと、相手のデータベースの見た目が変わります。
黙って列が増えていたら、相手は困ります。つなぐ前にひと言伝えて、列名も相手が分かる言葉にする。これだけで揉めません。
5. 試行錯誤したら、相手側を見にいく
設定を何度か切り替えたなら、相手のデータベースを開いて列を数えてください。使っていない列が残っているはずです。
消すときは、どの列に値が入っているかを先に確認します。値が入っているほうを消すと、つながりが失われます。
よくある質問(FAQ)
相手のデータベースに増えた列を消しても大丈夫ですか。
いまも同期している列を消すと、その方向から見えなくなります。消す前に、どちらの列に値が入っているかを確認してください。片方向に戻したときに取り残された列なら、値を確認したうえで消して問題ありません。
似た列が2つ並んでいるのですが、どちらを残せばいいですか。
いま自分のデータベースと同期しているのは、あとから作られたほうです。ただし値は古いほうに入っている可能性があります。新しいほうにつなぎ直してから、古いほうを消すことになります。
片方向と両方向は、あとから変えられますか。
変えられます。行に入っているつながりも保たれました。ただし、切り替えるたびに相手側に新しい列が作られるので、何度も往復しないほうがいいです。
自動で付く列名を、最初から指定できませんか。
作るときに名前を指定する手段は見つかりませんでした。作ってから変更する形になります。変更しても、自分側とのつながりは切れません。
相手のデータベースを消したら、つながりはどうなりますか。
列も、行に入っていたつながりも残りました。ゴミ箱から戻せば元どおりです。ただし、ゴミ箱にある間は先の中身が読めません。
片方向なら、相手には何も影響しませんか。
相手のデータベースに列は増えませんでした。相手側から見れば、つながれていること自体が見えない状態です。
つないだ相手のデータベースを、開いてみてください
英語の長い列名が残っていませんか。似た列が2つ並んでいませんか。設定を切り替えたことがあるなら、たぶん残っています。開いて数えるだけで見つかります。