Здравствуйте. Уже не один день бьюсь над одним запросом к БД Задача Скопировать данные из одной записи в другую, полностью, заменив лишь некоторые поля Логика [sql] COPY `entry_1` TO `entry_2` CHANGE (name = 'Admin', password = 'mypass') [/sql] Есть ли что-нибудь такое? Если нет - как это правильнее всего организовать при помощи insert? Количество полей 50+, заранее их число неизвестно.
Такие способы есть, и не в единственном числе. Я считаю -- правильней всего написать функцию (CREATE FUNCTION) и вставить её в запрос: [sql]INSERT INTO tablename (`entry_2`) select ИмяФункции(entry_1) AS entry_2[/sql]
Сейчас нельзя (ОЧЕНЬ занят -- у меня демонстрация через полчаса). Чтоб зря не ждать -- напишите в коде php логику замен, которые должны произойти.
Плавится мозг... Где ошибка: [sql] "INSERT into `".table_weapons."` (wname, wtype, mass, weared, image, price, created, owner, count, durability_now, durability_max, damage_min, damage_max, desc, level) VALUES ('Кристаллы нова', 8, 0.05, '0', 'res/nova_crystall.jpg', 5, 'Природа', 0, 1, 1, 1, 1, 0, 0, 'один из первых минералов, которые обнаружили люди на Эльдрине. В данный момент используется для переработки и дальнейшего использования в различных отраслях науки и техники', 0); [/sql] Ошибка
Горбунов Олег Гений ))))) Спасибо) Главное в гугле забил 1064-ую ошибку, вижу линку про зарезервированные слова. Думаю не мой случай З.ы А в прошлых запросах я ее засовывал в ``. З.ы.ы Есть какая-нить тулза для ловли таких ошибок?)
Горбунов Олег Расплавлен Впринципе на свежую голове можно написать свою (для подсчета кавычек, скобочек, запятых и зарезервираванных слов). Но стоит ли изобретать новый велик?
Приехали Operand should contain 1 column(s) [sql] INSERT into `".table_weapons."` (wname, wtype, mass, weared, image, price, created, need_level, need_power, need_intellect, need_knowleadge, need_health, need_dodge, need_reaction, give_power, give_intellect, give_knowleadge, give_health, give_dodge, give_reaction, give_mf_destruction, give_mf_accuracy, give_mf_stability, give_mf_breakdown, give_mf_reservation, give_hp, give_psy, owner, count, durability_now, durability_max, damage_min, damage_max, `desc`, level) SELECT (wname, wtype, mass, 0, image, price, created, need_level, need_power, need_intellect, need_knowleadge, need_health, need_dodge, need_reaction, give_power, give_intellect, give_knowleadge, give_health, give_dodge, give_reaction, give_mf_destruction, give_mf_accuracy, give_mf_stability, give_mf_breakdown, give_mf_reservation, give_hp, give_psy, 1, 1, durability_now, durability_max, damage_min, damage_max, `desc`, level) FROM `".table_weapons."` WHERE owner = '0' AND wname = 'Кристаллы нова' [/sql]