Я хотел бы узнать, правилен ли следующий MySQL.хотите знать, правильно ли SQL
Особенно я хотел бы, чтобы убедиться, что следующие пункты право:
- первичный ключ поля.
- Вархар (500) для хранения цитаты (например, известные слова некоторых людей, таких как философы или политики).
- Внешние ключи.
Большое вам спасибо!
CREATE TABLE quote (
id INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,
quote VARCHAR(500) NOT NULL
);
CREATE TABLE topic (
id INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,
topic VARCHAR(50) NOT NULL,
parentTopic INT UNSIGNED,
FOREIGN KEY (parentTopic) REFERENCES topic(id)
);
CREATE TABLE quoteTopics (
quote INT UNSIGNED NOT NULL,
topic INT UNSIGNED NOT NULL,
PRIMARY KEY (quote, topic),
FOREIGN KEY (quote) REFERENCES quote(id),
FOREIGN KEY (topic) REFERENCES topic(id)
);
Возможно, попробуйте выработать слово «правильный» в этом конкретном случае. – DaGardner
Что случилось, когда вы его попробовали? – BWS
Синтаксис ключей различается между серверами sql. Кажется, mysql, потому что у других серверов нет ключевого слова auto_increment. На mysql это кажется правильным. – peterh