5

Ruby on Rails テスト アプリケーションを Heroku にプッシュし、コマンドを実行した後、次heroku run rake db:migrateのような通知を受け取りました。

NOTICE: CREATE TABLE will create implicit sequence "microposts_id_seq" for serial column "microposts.id"

暗黙のシーケンスとは何ですか? そして、この場合、「シリアル列」は主キーを参照する別の方法ですか?

4

1 に答える 1

1

テーブルには、serialデフォルト値がシーケンスから取得される整数列の省略形として定義されている列が含まれています。そのために、PostgreSQL はその列にバインドされるシーケンスを自動的に作成します。このメッセージは、そのようなシーケンスが作成されたことを示すだけです。

列を明示的に定義していない場合はserial、おそらく「autoincremen」または Ruby 用語でそれを定義したと思われます。

詳細については、マニュアルをお読みください: http://www.postgresql.org/docs/current/static/datatype-numeric.html#DATATYPE-SERIAL

于 2012-12-19T07:50:40.013 に答える