Итак, скажем, я пытаюсь создать таблицу в MYSQL, которая содержит 3 столбца: Id, Name и Price. Как я могу создать составной ключ между Id и Name, учитывая, что это разные типы данных? Я пробовал следующий запрос, но я представил ошибку.
CREATE TABLE name_price (
id int NOT NULL,
name Varchar NOT NULL,
price int,
PRIMARY KEY (id, name)
);
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'NOT NULL,
price int,
PRIMARY KEY (id, name)
)' at line 3
Любая помощь будет оценена по достоинству.
Вы просто пропускаете длину varchar для имени. Например:
CREATE TABLE name_price (
id int NOT NULL,
name varchar(100) NOT NULL,
price int,
PRIMARY KEY (id, name)
);
id
качестве первичного ключа?name
+price
? Название таблицы предполагает это. Вы можете сохранитьid
и сделать его ключом или вообще избавиться от него.