[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Mysql: кавычки, VALUES | SET в запросах.
inpost
Всем добрый день. Меня интересуют следующие вопросы:
1. Вроде с одной стороны кажется, что правильно писать запросы так:
INSERT INTO `table`... хотя в мануале INSERT INTO table, без всяких кавычек. Читал справочники и на mysql.ru , и в книге Котерова, и новые посетители форума никогда не обрамляют имена ячеек, названия таблиц... Почему, и как правильно? Почему тот же справочники и книги настоятельно не рекомендуют использовать эти кавычки (имею ввиду отсутствие рекомендации или как правила в целом). Тот же PMA тоже не пользуется кавычками обрамления (если не ошибаюсь).
2. Мне удобнее писать: INSERT INTO `table` SET `row` = 'row', в свою очередь те же справочники используют SET только для UPDATE, а для вставки VALUES. Почему для инсерта не используют тот же SET ?
3. Собственно назрел и третий вопрос, можно сделать мультивставку как при: INSERT INTO `table` () VALUES (),(),() , но только через SET ?



Спустя 3 минуты, 50 секунд (7.02.2011 - 16:57) Гость_alex12060 написал(а):
Только вышел и тут очень интересный вопрос)
На самом деле, я не вижу разницы огромной обрамлять кавычками, иль же нет. Вот насчет пхпмайадмин - это явно понятно, чтобы не тратить лишние пару сотен кликов на кавычки, просто пишут без них (быстрее как бы), да и еще между названиями не ставят пробелов) Все это ускоряет процесс написания скрипта)

Вот мое мнение)

Спустя 5 минут, 33 секунды (7.02.2011 - 17:03) waldicom написал(а):
1. Это важно для полей, которые носят такие же названия, как зарезервированные слова в MySQL. Например назови поле int и попробуй сделать SELECT int FROM table
2. Потому что так привычнее и удобнее? Если нравится - используй.
3. Х.з. unsure.gif

Спустя 57 секунд (7.02.2011 - 17:04) linker написал(а):
inpost
1. Ты ошибаешься, PMA использует апострофы и кавычки. Конечно же никто не заставляет их использовать, но тогда придется быть осторожнее с именованием баз данных, таблиц, столбцов. Новички как раз об этом забывают в результате сплошные ошибки.
2. Я использую INSERT INTO ... () VALUES(...)
3. Скорее всего нет.

Спустя 22 минуты, 2 секунды (7.02.2011 - 17:26) inpost написал(а):
1. Я это всё прекрасно понимаю, но Котеров же не дурак, почему он не обрамляет и не учит сразу обрамлять? Тот же справочник основной на mysql.ru тоже без этого.
2. Вопрос немного в другом, сам же мускул их обрабатывает одинаково, значит у него 2 отдельных функции по работе с каждой, или один из этих видов приводит ко второму (так называемому правильному) и потом уже запускает процес.

Спустя 31 минута, 17 секунд (7.02.2011 - 17:57) waldicom написал(а):
По вопросу 2: наверняка второй вариант (правда что к чему приводится - фиг его знает), первый не могу себе представить.

Спустя 15 минут, 8 секунд (7.02.2011 - 18:12) linker написал(а):
inpost
1. Повторюсь, обрамлять не обязательно, но указывать на возможные ошибки в запросах нужно. Я думаю, что на сайте мускула в мануале об этом сказано, говорит ли об этом Котеров - не знаю.
2. А хз, смотри сорцы мускула.

Спустя 5 минут, 29 секунд (7.02.2011 - 18:18) Zerstoren написал(а):
в мускуле много зарегистрированных имен

всякие table,select,update и весь бесконечный список.

Если у вас будет база table - то к ней можно будет обратится исключительно `table` иначе получим еррор) Нарывался в свое время на какое-то зарегистрированное имя. Потом просто заюзал кавычки)

Спустя 1 час, 7 минут, 44 секунды (7.02.2011 - 19:25) vasa_c написал(а):
Писать в кавычках и не парится, тем более что так и пишите.
mysql.ru - к чорту.

В SQL для INSERT нельзя использовать SET, это самодеятельность MySQL


_____________
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.