deno run -A --unstable https://deno.land/x/nessie/cli.ts init # => nessie.config.tsが作成される # deno run -A --unstable https://deno.land/x/nessie/cli.ts init --mode config --dialect mysql とすればmysql向けの内容で作成される
$ deno run -A --unstable https://deno.land/x/nessie@2.0.1/cli.ts make:migration create_users Check file:///usr/src/app/nessie.config.ts Created migration /usr/src/app/db/migrations/20210703032855_create_users.ts
# マイグレーション deno run -A --unstable https://deno.land/x/nessie/cli.ts migrate
# ロールバック deno run -A --unstable https://deno.land/x/nessie/cli.ts rollback
テーブルの内容を確認。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
use testdb; show tables; +-------------------+ | Tables_in_testdb | +-------------------+ | nessie_migrations | | users | +-------------------+ 2rowsinset (0.00 sec)
show columns from users; +-------+--------------+------+-----+---------+----------------+ | Field | Type |Null| Key |Default| Extra | +-------+--------------+------+-----+---------+----------------+ | id |int(11) |NO| MUL |NULL| auto_increment | | name |varchar(256) | YES ||NULL|| +-------+--------------+------+-----+---------+----------------+ 2rowsinset (0.00 sec)
テーブルの作成ができました。
カラムの追加をしてみる
created_at, updated_at, age のカラムを追加してみます。
テーブル作成時と同じく、マイグレーションファイル作成。
1
$ deno run -A --unstable https://deno.land/x/nessie/cli.ts make:migration add_columns_users