1. ymm1x

    Posted

    ymm1x
Changes in title
+【dmemo】リネームしたテーブルのドキュメントを男らしく引き継ぐ
Changes in tags
Changes in body
Source | HTML | Preview
@@ -0,0 +1,18 @@
+Cookpad 社の dmemo、最近業務で使ってます。
+
+- [データベースドキュメント管理システム dmemo のご案内 - クックパッド開発者ブログ](http://techlife.cookpad.com/entry/2016/08/08/103906)
+
+とても便利に使わせていただいてるのですが、一度テーブルのドキュメントを書いたあとにテーブル名をリネームしてしまうとドキュメントを引き継げないという問題がありました。
+
+各カラムの Markdown ドキュメントを一つ一つコピペして保存してもいいのですが、男らしく dmemo の DB を直接書き換えて引き継ぎしてみました。
+
+### 手順
+
+1. `table_memos` テーブルの旧レコードの `id` を一時的に負数などに置き換える (ex: 50 -> -50)
+1. `table_memos` テーブルの新レコードの `id` を旧レコードの ID で置き換える (ex: 100 -> 50)
+1. dmemo (Web) 上で旧テーブルが `Unlinked table` に変わっていることを確認し Delete table ボタンで削除する (旧レコードが物理削除されます)
+
+リネーム前のレコード ID が 50、リネーム後が 100 という前提です。
+
+今のところこの方法で特に問題は起きていませんが、バックアップ取ってから行った方がいいと思います。
+この方法では `table_memos`.`description` については引き継げないので、そこだけは個別にコピーする必要があります。