Happy13 27 Опубликовано 15 июня, 2018 Ребят приветули всем! Такой вопрос по базам, после создания таблицы с FOREIGN KEY в нее не вносятся значения через INSERT INTO, команда проходит без ошибок, но значений нету когда таблицу открываю. В чем дело подскажите пожалуйста! Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Aslan 131 Опубликовано 15 июня, 2018 17 минут назад, Happy13 сказал: Ребят приветули всем! Такой вопрос по базам, после создания таблицы с FOREIGN KEY в нее не вносятся значения через INSERT INTO, команда проходит без ошибок, но значений нету когда таблицу открываю. В чем дело подскажите пожалуйста! Подробнее напиши команду какую используешь и скрин структуры базы. Неправильный запрос скорее всего. 1 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Happy13 27 Опубликовано 15 июня, 2018 mysql> CREATE TABLE providers ( -> country_id INT AUTO_INCREMENT, -> name varchar(50), -> PRIMARY KEY (country_id)); Query OK, 0 rows affected (0.00 sec) mysql> CREATE TABLE goods ( -> id INT AUTO_INCREMENT, -> name VARCHAR(50), -> price INT, -> country_id INT, -> PRIMARY KEY (id), -> FOREIGN KEY (country_id) REFERENCES providers(country_id) -> ); Query OK, 0 rows affected (0.01 sec) создал таблицы, и пытаюсь залить значение, вот так INSERT INTO goods VALUES (1, 'Bananas, 4300, 1); ошибка выходит 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 ''Bananas, 4300, 1)' at line 1 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Happy13 27 Опубликовано 15 июня, 2018 хотя в другой столбец залилась без проблем INSERT INTO providers VALUES (1, 'Brazil'); Query OK, 1 row affected (0.01 sec) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Falkland 51 Опубликовано 15 июня, 2018 11 минут назад, Happy13 сказал: mysql> CREATE TABLE providers ( -> country_id INT AUTO_INCREMENT, -> name varchar(50), -> PRIMARY KEY (country_id)); Query OK, 0 rows affected (0.00 sec) mysql> CREATE TABLE goods ( -> id INT AUTO_INCREMENT, -> name VARCHAR(50), -> price INT, -> country_id INT, -> PRIMARY KEY (id), -> FOREIGN KEY (country_id) REFERENCES providers(country_id) -> ); Query OK, 0 rows affected (0.01 sec) создал таблицы, и пытаюсь залить значение, вот так INSERT INTO goods VALUES (1, 'Bananas, 4300, 1); ошибка выходит 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 ''Bananas, 4300, 1)' at line 1 Попробуй прочитать ошибку. Не? И для начала кавычку поставь вторую в своем запросе. 1 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
genius911147 29 Опубликовано 15 июня, 2018 INSERT INTO goods VALUES ('1', 'Bananas', '4300', '1'); так попробуй 1 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
se1dhe 501 Опубликовано 15 июня, 2018 59 минут назад, Happy13 сказал: mysql> CREATE TABLE providers ( -> country_id INT AUTO_INCREMENT, -> name varchar(50), -> PRIMARY KEY (country_id)); Query OK, 0 rows affected (0.00 sec) mysql> CREATE TABLE goods ( -> id INT AUTO_INCREMENT, -> name VARCHAR(50), -> price INT, -> country_id INT, -> PRIMARY KEY (id), -> FOREIGN KEY (country_id) REFERENCES providers(country_id) -> ); Query OK, 0 rows affected (0.01 sec) создал таблицы, и пытаюсь залить значение, вот так INSERT INTO goods VALUES (1, 'Bananas, 4300, 1); ошибка выходит 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 ''Bananas, 4300, 1)' at line 1 1 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты