перестал выполняться запрос insert

sniper_9

Новичок
перестал выполняться запрос insert

Всем доброго времени суток. Помогите пожалуйста. Перстал выполняться запрос insert. запросы на обычную выборку работают без проблем. Никаких ошибок на экране не высвечивается. Выполняю оператором mysql_query(); ОЧень нужна помощь. заранее спасибо.
 

sniper_9

Новичок
1064You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''nedvigimost.razdel' ('id', 'name' , 'group') VALUES ('35','dfgdfgd','3')' at line 1

Самое смешное, что вот мой запрос:
$query =insert into 'nedvigimost.razdel' ('id', 'name' , 'group') VALUES ('35','dfgdfgd','3');";

-~{}~ 17.07.07 20:26:

Скопировал я именно это, а когда вставил в окно для поста, то появилось вот так:
$query ="insert into 'nedvigimost.razdel' ('id', 'name' , 'group') VALUES ('35','dfgdfgd','3');";

-~{}~ 17.07.07 20:27:

Вроде не пью

-~{}~ 17.07.07 20:28:

извиняюсь. строка такая:
$query ="insert into 'nedvigimost.razdel' ('id', 'name' , 'group') VALUES ('35','dfgdfgd','3');";
синтаксически всё верно.
 

sniper_9

Новичок
Mysql сказал, что пора сделать перерыв. Выполнил только вот такой запрос.

INSERT into razdel (`id`, `name` , `group`) VALUES ('35','dfgdfgd','3');

ААААААААААААААААааааааааааааааааааа!!!!!!!!!!!!!!!!!!!
 

TutanXamoN

Новичок
Без кавычек работает.
Но если их ставить, то их нуна ставить прально.
 

litvinenko

Новичок
все названия баз, таблиц, полей надо лучше выделять кавычками обратными (`), а значения для текстовых полей одинарными (') ИМХО.
 

Zetruger

ivan.chistyakov.name
народ не парьтесь с именем базы данных в запросах - это совершенно не к чему
и не используйте кавычки, кроме как для строк
 

litvinenko

Новичок
а ты не допускаешь такой случай, что тебе надо выбрать допустим в одном запросе данные из нескольких баз? :)
А отсутствие обрамления имен полей - это прямой путь к инъекции.
 

Zetruger

ivan.chistyakov.name
Автор оригинала: litvinenko
а ты не допускаешь такой случай, что тебе надо выбрать допустим в одном запросе данные из нескольких баз? :)
А отсутствие обрамления имен полей - это прямой путь к инъекции.
ну судя из запроса автора топика там о нескольких базах речи не идет

ну а все что касаемо инъекций это не проблема кавычек, а степени криворукости программистов
(просто надо грамотно проверять все входные параметры, а не полагаться на кавычки)
 

LexIp

Новичок
Кавычки обычно используют, если нужны названия полей или таблиц схожие с системными (типа `order`, `insert` etc)
 

Zetruger

ivan.chistyakov.name
Автор оригинала: LexIp
Кавычки обычно используют, если нужны названия полей или таблиц схожие с системными (типа `order`, `insert` etc)
это правда!

но я сторонник крос-субд запросов, а не именования полей ключевыми словами

скажите кроме MySQL обратные кавычки еще какая-нибудь СУБД воспринимает?
 
Сверху