2016-05-01 13 views

答えて

-1

号にエラーが右最初NOT NULLです。特に、CHECK(...) については、 には存在しません。

FOREIGN KEYには、REFERENCES句が必要です。 Reference

構文のすべての側面をリファレンスマニュアルで確認してください。

+0

Errr。 。 。 MySQL *は 'check'を解析し、制約をチェックします。それは単にそれらを実装するodesn't。私は構文図がこの時点でかなり明確だと思う:http://dev.mysql.com/doc/refman/5.7/en/create-table.html。 –

1

のチェック制約を実装していませんが、構文をサポートしています。この目的を実際に確認するには、トリガー、外部キー参照、または列挙型を使用することをお勧めします。

しかし、前に制約を表示するNOT NULLの構文コール:

status varchar(8) not null check (status in ('Approved', 'Pending', 'Denied')) 

構文はcreate tableためdocumentationに説明されています。

+0

私は構文を読んでいるので、 'check'の前にカンマがあり、' check'はどの列にも関連付けられていません。 –

+0

@RickJames。 。 。これは、列定義の一部ではない制約の個別の構文になります。 –

関連する問題