The attribute AUTO_INCREMENT for the column id has the effect that with each new record the appropriate value for id is automatically inserted.
The attribute NOT NULL ensures that actual values must be placed in both columns. It is not permitted to store the data record NULL or not to insert any value at all. Thus this attribute prevents invalid data records from being stored.
PRIMARY KEY (id) has the effect that the column id is used to identify the data records.
mysql>
mysql> CREATE TABLE myTable (
-> id INT NOT NULL AUTO_INCREMENT,
-> choice TINYINT NOT NULL,
-> ts TIMESTAMP,
-> PRIMARY KEY (id));
Query OK, 0 rows affected (0.05 sec)
mysql>
mysql> DROP TABLE myTable;
Query OK, 0 rows affected (0.00 sec)
mysql>