2012-04-01 3 views
1

Я не могу понять это. Все переменные в порядке. Распечатал инструкцию SQL перед выполнением в PHP ... Это утверждение точно так, как он отправляется быть побежал по PHPошибка в операторе mysql

INSERT INTO 'images' ('filename', 'creator', 'date', 'notes') VALUES ('cat.sdf', 'michaelamici', '2002-07-05', 'SDfdddfdffddffdfgs') 

Спасибо!

ответ

5

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

INSERT INTO `images` (`filename`, `creator`, `date`, `notes`) VALUES ('cat.sdf', 'michaelamici', '2002-07-05', 'SDfdddfdffddffdfgs') 

Только в случае, если вам интересно, список зарезервированных имен (которые должны быть заключены в кавычки, если используется в качестве имени таблицы или столбца) можно найти здесь: http://dev.mysql.com/doc/refman/5.5/en/reserved-words.html.

Кроме того, чтобы узнать, какие символы могут быть включены в некотируемое имя и которые могут отображаться только как часть цитируемого имени, см. Здесь: http://dev.mysql.com/doc/refman/5.5/en/identifiers.html.

N.B. соответствующую версию MySQL.

2

Ваши имена таблиц и полей должны быть либо в обратном порядке (`), либо без кавычек.

1
INSERT INTO `images` (`filename`, `creator`, `date`, `notes`) VALUES 
('cat.sdf', 'michaelamici', '2002-07-05', 'SDfdddfdffddffdfgs'); 

Попытка редактирование одиночных кавычек в обратные кавычки для имени таблицы и имен полого

Смежные вопросы