Синтаксис первичного ключа - PullRequest
1 голос
/ 22 февраля 2020

Кроме визуального, есть ли функциональная разница между объявлением основного в определении столбца или внизу?

Например:

CREATE TABLE tbl_name (
    id INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,
    content TEXT
) ENGINE=InnoDB CHARSET=utf8;

Отличается ли вышеприведенное от:

CREATE TABLE tbl_name (
    id INT UNSIGNED NOT NULL AUTO_INCREMENT,
    content TEXT,
    PRIMARY KEY ( id )
) ENGINE=InnoDB CHARSET=utf8;

1 Ответ

3 голосов
/ 22 февраля 2020

Оба синтаксиса эквивалентны.

Первый использует ограничение столбец .

Второй синтаксис использует ограничение таблица и наиболее полезен, когда требуется составной первичный ключ, который ссылается на несколько столбцов (в этом случае невозможно использовать ограничение столбца).

...