当サイトではアフィリエイトプログラムを利用して商品を紹介しています。掲載リンクからご購入いただいた場合、当サイトに報酬が発生することがあります。

Notionでプロパティの型を変えても、データは消えていない|戻せば戻る。壊れるのは数式とロールアップ

製図台の上に広げられた設計図と、消しゴム付きの鉛筆。Notionのデータベースをあとから直すときの記事のアイキャッチ

Notionで業務の型を作ると、必ず「あとから直したい」場面が来ます。プロパティの型を変えたい、いらない列を消したい、名前を分かりやすくしたい。

ここで手が止まるのが、直したらデータが消えるんじゃないかという不安です。実際、多くの解説記事に「型を変えるとデータが初期化されることがある」と書かれています。

そこで、実際にデータベースを作って、変えて、戻して、何が起きるかを測りました。結論から言うと、消える操作と消えない操作ははっきり分かれます。そしていちばん怖いのは型変更ではありません。

この記事の数字は、Notion APIでデータベースの定義を書き換えて計測した結果です。ロールアップそのものの仕組みは計算の選び方の記事で、空欄が集計に与える影響はこちらの記事でまとめています。

「型を変えるとデータが消える」は正確ではない

まず、いちばん誤解されているところから。

4種類のプロパティを数値に変えて、また戻した

1行だけのデータベースを作って、4つのプロパティに値を入れました。日本語のテキスト、数字だけのテキスト、セレクト、日付です。

この4つを全部「数値」に変えて、そのあと元の型に戻しました。結果がこれです。

プロパティ 最初 数値に
変えた直後
元の型に
戻した後
テキスト「重要な補足」 重要な補足 空 重要な補足
テキスト「1000」 1000 1000 1000
セレクト「A」 A 空 A
日付 2026-09-08 2026-09-08 空 2026-09-08

消えたのではなく、表示されていないだけ

注目してほしいのは右の列です。元の型に戻したら、4つとも値が返ってきました。

もし数値に変えた時点でデータが破棄されていたなら、戻しても空のままのはずです。そうならなかったということは、Notionは元の値を持ったまま、表示だけを切り替えていることになります。

「型を変えるとデータが消える」という説明は、画面上で空欄になる現象を指しています。中のデータが失われたわけではありません。

ただし、これを安全網として当てにしない

戻せば戻る、と分かっても、私は型変更を気軽にやってよいとは考えていません。理由が2つあります。

1つは、空欄になっている間に誰かが編集する可能性です。空欄の状態で別の値を入力されたら、そちらが正になります。元の値には戻せません。チームで使っているデータベースほど、この危険は上がります。

もう1つは、型変更そのものより数式とロールアップのほうが壊れやすいことです。こちらは戻しても自動では直りません。次の章から見ていきます。

追記:セレクトだけは戻りませんでした

この記事を書いたあとに測り直したところ、セレクトの列だけは、他の型に変えると元に戻しても値が復活しません。選択肢の一覧も空になります。他の型は戻せるという結論は変わりませんが、ここは例外です。くわしくはセレクトだけは戻らない話にまとめました。

空欄になる組み合わせ、そのまま残る組み合わせ

同じ「数値に変える」でも、空欄になるものとならないものがありました。境目ははっきりしています。

数字として読める文字列だけが残る

テキストの「1000」は、数値に変えても1000のまま表示されました。文字列としての1000が、数値の1000として解釈できるからです。

一方で「重要な補足」は空欄になりました。数値として解釈できないので、表示するものがありません。

つまり判定は単純で、変換先の型として読める値かどうかだけです。読めれば表示され、読めなければ空欄になります。

セレクトと日付は、数値としては読めない

セレクトの「A」も、日付の2026-09-08も、数値に変えた時点で空欄になりました。これも同じ理由です。

逆に言うと、セレクトをテキストに変えるような、受け皿の広いほうへ動かす変更は表示が保たれます。テキストはほとんどの値を文字列として受け取れるからです。

迷ったら、広いほうへ動かす

実際に直すときの指針としては、こう考えると事故が減ります。

  • 広いほうへ動かす(セレクト → テキスト、数値 → テキスト)… 表示が保たれやすい
  • 狭いほうへ動かす(テキスト → 数値、テキスト → 日付)… 読めない値が空欄になる

狭いほうへ動かすときは、先に中身を確認してください。全部が数字なら問題ありませんが、1件でも「未定」「-」のような文字が混ざっていると、その行だけ空欄になります。

数式は、型変更と削除で壊れ方が違う

ここからが本題です。数式プロパティは、参照している列に手を入れると影響を受けます。ただし壊れ方が2種類あって、深刻さが違います。

参照先の型を変えると、式は残るが値が空になる

金額という数値プロパティを作り、それを参照する数式を用意しました。式は金額に1.1を掛けるだけのものです。金額が1000のとき、数式は1100を返します。

この状態で、金額を数値からテキストに変えました。

結果は、式そのものは残っているのに、値だけが空になりました。文字列に掛け算はできないので、計算結果が出せません。

これは復旧しやすいパターンです。金額を数値に戻したら、数式の値も1100に戻りました。式に手を入れる必要はありません。

参照先を削除すると、式そのものが壊れる

次に、金額の列を削除しました。こちらは深刻でした。

数式の中身が、prop("金額") * 1.1 から、内部的な参照コードがむき出しになった状態に変わりました。人が読める形ではなくなり、値も空になります。

同じ名前で列を作り直しても、この参照は自動ではつながりません。数式を開いて、書き直す必要があります。

2つの違いを、図にするとこうなります

参照されている列に手を入れたとき 名前を変える 数式もロールアップも 参照先が自動で書き換わる 壊れない 型を変える 式や設定は残るが 値だけが空になる 戻せば直る 列を削除する 数式は式が壊れる ロールアップは列ごと消える 作り直しが要る 下に行くほど手戻りが大きい。削除だけは元に戻せない。
実際にデータベースを作って、1つずつ操作して計測した結果です。

ロールアップは、列ごと消える

数式より弱いのがロールアップでした。ここがいちばん注意が要ります。

参照元の列を削除すると、ロールアップの列がなくなる

プロジェクトとタスクをリレーションでつなぎ、タスクの金額を合計するロールアップを作りました。値は1000です。

この状態でタスク側の金額の列を削除したところ、プロジェクト側のロールアップの列そのものが消えました。値が空になるのではなく、列がなくなります。

数式なら式が壊れた状態で残るので、あとから直せます。ロールアップは残骸すら残りません。どんな設定だったかを覚えていないと、作り直せません。

リレーション列を削除しても、同じことが起きる

今度は、金額はそのままにして、プロジェクト側のリレーション列を削除しました。

こちらも、ロールアップの列が消えました。リレーションをたどれなくなるので、ロールアップが成立しないからです。

このとき、タスク側の数式は無事でした。数式はリレーションに依存していないので、影響を受けません。

整理するとこうなります

操作 数式 ロールアップ
参照先の名前を変える 自動で追従 自動で追従
参照先の型を変える 値だけ空 値だけ空
参照先を削除する 式が壊れる 列ごと消える
リレーション列を削除 影響なし 列ごと消える

この表の3行目と4行目が、この記事でいちばん覚えて帰ってほしいところです。削除だけは、戻す手段がありません。

壊れたあとに、どう直すか

やってしまったあとの話もしておきます。壊れ方によって手順が違います。

数式の値だけが空になっているとき

参照先の型を変えたことが原因です。数式には手を入れず、参照先の列を元の型に戻します。

列の名前をクリックしてプロパティの設定を開き、種類の欄から元の型を選び直すだけです。戻した瞬間に、数式の値も復活しました。テキストに変えていた金額を数値に戻したら、数式は1100を返すようになっています。

ここで数式を書き直そうとしないでください。式は壊れていないので、触ると逆に壊します。

数式の中身が読めない文字列になっているとき

参照先の列を削除した場合です。式の中の参照部分が、内部的なコードに置き換わっています。

直し方は、まず消した列と同じ型・同じ名前の列を作り直します。ただしこれだけではつながりません。新しく作った列は、消した列とは別のものとして扱われるからです。

そのうえで数式のプロパティを開き、壊れている参照部分を消して、新しい列を選び直します。式の他の部分(掛け算や条件分岐)はそのまま残っているので、参照だけ差し替えれば復旧します。

式が長い場合は、直す前に式の全文をどこかにコピーしておくと安全です。壊れた表示のままでも、掛け算や関数の構造は読み取れます。

ロールアップの列がなくなっているとき

これがいちばん手間です。列そのものが消えているので、作り直すしかありません。

手順は3つです。まず、消えた原因を確認します。参照元の列を消したのか、リレーションの列を消したのか。リレーションを消していた場合は、リレーションから作り直す必要があります。

次に、リレーションが生きていることを確認したうえで、新しくロールアップのプロパティを追加します。そして、どのリレーションをたどるか、たどった先のどの列を見るか、どの計算を当てるか、の3つを指定し直します。

最後に検算します。中身が分かっている行を1つ選んで、想定どおりの数字が出ているかを見ます。作り直したロールアップは設定を間違えても数字は出るので、ここを飛ばすと気づけません。

設定を控えておけば、作り直しは5分で済む

ロールアップは復旧手段がない代わりに、設定項目が3つしかありません。この3つをメモしておけば、消えても作り直せます。

おすすめは、データベースの説明欄に書いておくことです。データベースのタイトルの下にある説明を開いて、「合計=タスク→金額→合計」のような1行を残しておきます。数が増えても数行で収まります。

名前を変えるだけなら、何も壊れない

逆に、安心してよい操作もあります。名前の変更です。

数式は参照先を自動で書き換える

金額という列を「金額(税抜)」に変えてみました。数式は prop("金額") * 1.1 のままだと壊れそうに見えます。

実際には、数式の中身が prop("金額(税抜)") * 1.1 に自動で書き換わりました。値も1100のまま変わりません。

Notionは列を名前ではなく内部のIDで参照していて、表示するときに名前へ置き換えています。だから名前を変えても、つながりは切れません。

ロールアップも追従する

同じくロールアップも、参照先の列名が「金額(税抜)」に自動更新されました。値は1000のまま維持されています。

さらに、リレーションの列名を「タスク」から「関連タスク」に変えたときも、ロールアップ側の参照が自動で書き換わりました。

だから、名前は最初から悩まなくていい

ここは実務での判断に効きます。列名は、あとからいくらでも変えられます。作り始めの段階で完璧な名前を考えようとして手が止まるくらいなら、仮の名前で進めたほうが早いです。

逆に、型と構成は最初に決めておく価値があります。こちらは直すときに影響が出ます。

直す前にやっておく3つのこと

ここからは、実際に手を動かす前の準備です。5分かかりませんが、やるとやらないで手戻りが変わります。

1. データベースを複製する

いちばん確実なのがこれです。直す対象のデータベースを右クリックして、複製を選びます。サイドバーからでも、ページの右上のメニューからでもかまいません。

複製したほうに「作業前バックアップ」など日付入りの名前を付けておくと、あとで探しやすくなります。作業が無事に終わったら消します。

複製にはリレーションの扱いという注意点があります。複製したデータベースのリレーションは、複製元と同じ相手を指したままになることがあるので、複製したほうを編集用に使わないでください。あくまで元の姿を残すための控えとして置いておきます。

2. その列を参照しているものを数える

削除しようとしている列が、どこから参照されているかを先に確認します。確認する先は2つです。

1つ目が、同じデータベースの中の数式プロパティ。列の一覧を開いて、数式の型になっているものを順番に開き、その列名が式に入っていないかを見ます。

2つ目が、このデータベースを参照している他のデータベースのロールアップです。こちらは見落としやすいので、リレーションでつながっている相手を先に洗い出してから、その相手のプロパティ一覧を確認します。

数式は壊れても直せますが、ロールアップは列ごと消えるので、こちらを重点的に見ます。

3. 1列ずつ変えて、そのつど確認する

複数の列をまとめて直したくなりますが、1列ずつ進めるほうが結局早いです。

まとめて変えると、何が原因でどの数字がおかしくなったのかが分からなくなります。1列変えたら、数式とロールアップの値を目で見て、想定どおりかを確認してから次に進みます。

もし想定と違ったら、その1列だけ元に戻せば済みます。型変更なら戻せば値も戻るので、傷は浅く済みます。

4. 変えたあとに見る場所を決めておく

1列直すたびに、どこを見れば異常に気づけるかを決めておきます。見る場所は3つです。

1つ目が、直した列そのもの。空欄になっている行がないかを、ビューを一番下までスクロールして確認します。件数が多いなら、その列が空のものだけを表示するフィルタを一時的に作ると早いです。

2つ目が、同じデータベースの数式の列。値が空になっていないか、桁がおかしくないかを見ます。数式は空になっても静かなので、意識して見ないと気づけません。

3つ目が、このデータベースを参照している他のデータベースのロールアップです。列そのものが消えていないか、数字が変わっていないかを確認します。ここは別のページを開かないと見えないので、忘れやすいところです。

削除は、いちばん最後に回す

いらないと思った列も、すぐには消さないでください。まず名前の先頭に「旧」などを付けて、ビューから非表示にします。

それで1週間ほど運用して、誰も困らなかったら消す。この順番にしておくと、参照の見落としがあっても手遅れになりません。

よくある質問(FAQ)

プロパティの型を変えたらデータが消えました。戻せますか。

元の型に戻せば、値も戻ります。実際に、日本語のテキスト・セレクト・日付を数値に変えて空欄になった状態から、元の型に戻したところ4つとも値が返ってきました。消えたのではなく、表示できないので空欄になっている状態です。ただし空欄の間に誰かが入力すると、そちらが正になります。

数式が参照している列を消してしまいました。

数式の中身が内部的な参照コードに変わり、値は空になります。同じ名前で列を作り直しても自動ではつながらないので、数式を開いて書き直してください。式の構造自体は残っているので、参照部分を選び直せば復旧できます。

ロールアップの列が急になくなりました。

参照元の列を削除したか、リレーションの列を削除した可能性が高いです。ロールアップはこの2つのどちらかを失うと、列ごと消えます。復旧はロールアップを作り直すしかないので、どのリレーションのどの列を何の計算で集計していたかを思い出す必要があります。

列名を変えると数式が壊れませんか。

壊れません。数式の中の参照が自動で新しい名前に書き換わり、値も変わりませんでした。ロールアップも同じく追従します。リレーションの列名を変えた場合も、ロールアップ側の参照が自動更新されました。

テキストを数値に変えたら、一部の行だけ空欄になりました。

数値として読めない値が入っている行です。「未定」「-」「約1000」のような文字が混ざっていると、その行だけ表示できません。元の型に戻せば値は戻るので、中身を直してから変換し直してください。

ロールアップの設定を忘れてしまいました。控えておく方法はありますか。

ロールアップの設定項目は、どのリレーションをたどるか・たどった先のどの列を見るか・どの計算を当てるかの3つだけです。データベースの説明欄に「合計=タスク→金額→合計」のような1行を残しておけば、消えても作り直せます。列が増えても数行で収まります。

直す前のバックアップはどう取るのがいいですか。

データベースを複製するのがいちばん簡単です。ただし複製したほうのリレーションは複製元と同じ相手を指したままになることがあるので、控えとして置いておくだけにして、編集には使わないでください。

直す前に、複製を1つ作っておく

型変更は戻せますが、削除は戻せません。手を入れる前に複製を1つ置いておくだけで、判断が軽くなります。まずは小さなデータベースで、変えて戻す動きを確かめてみてください。

Notionを使ってみる

上部へスクロール