Большой Воронежский Форум

Если это ваш первый визит, рекомендуем почитать справку по форуму. Для размещения своих сообщений необходимо зарегистрироваться. Для просмотра сообщений выберите раздел.
Вернуться   Большой Воронежский Форум » Компьютеры и все, что с ними связано » » Веб-дизайн
Что касается web-а... WebMaster-а Воронежа - объединяйтесь!

Ответ
 
Опции темы
Старый 03.07.2013, 13:24   #1   
Форумец
 
Аватар для Daggerfall
 
Сообщений: 1,880
Регистрация: 21.04.2004
Возраст: 38

Daggerfall вне форума Не в сети
вопросик по mysql

суть такова:

есть таблица innoDB в mysql, с, к примеру, таким содержанием:

столбцы: ид_товара; артикул_товара; цена_товара

ид_товара - auto_increment, int, первичный ключ.

артикул_товара - varchar, т.к. используются не только цифры.

цена_товара - decimal.

~3500 строк с заполненными значениями.

вопрос в следующем: реально ли (и если да - то как) путем импорта в phpmyadmin .csv-файла сменить значения в столбце цена_товара, соответствующие заданным в файле значениям артикул_товара, независимо от столбца ид_товара.

предполагаю, что это что-то вроде хитрого запроса с выборкой значений артикул_товара из файла, сравнения оных со значениями из таблицы и присваивания соответствующего значения цена_товара из файла полю цена_товара в таблице.

тупо импорт файла с двумя столбцами значений без ид_товара ничего не дает.

понимаю, объяснил крайне путанно, но в sql я - нуб, увы.
  Ответить с цитированием
Старый 03.07.2013, 15:25   #2   
Registered User
 
Сообщений: 1,114
Регистрация: 23.06.2007
Возраст: 56

Hopkroft вне форума Не в сети
Daggerfall, у тебя 1 таблица или 2.
3500 строки это что? Выставленные счета или прайс?
  Ответить с цитированием
Старый 03.07.2013, 15:37   #3   
Форумец
 
Аватар для Daggerfall
 
Сообщений: 1,880
Регистрация: 21.04.2004
Возраст: 38

Daggerfall вне форума Не в сети
одна таблица. прайс.
  Ответить с цитированием
Старый 03.07.2013, 16:02   #4   
Форумец
 
Аватар для Daggerfall
 
Сообщений: 1,880
Регистрация: 21.04.2004
Возраст: 38

Daggerfall вне форума Не в сети
хмм, покурил маны, погуглил. похоже, копать мне вот в этом направлении, не?
http://stackoverflow.com/questions/1...-from-csv-file
  Ответить с цитированием
Старый 03.07.2013, 23:27   #5   
Форумец
 
Аватар для Spectator
 
Сообщений: 39,860
Регистрация: 27.05.2003
Возраст: 46

Spectator вне форума Не в сети
прошел еще один год))))
ну говорил же уже в прошлый раз.
не SQL здесь нужен, а цикл по строкам и столбцам.
выгрузили таблицу, прошлись циклом по всей, заменили, загрузили обратно

если нет возможности вгрузить файл, создай SQL с INSERT'ами всех значений.

только ты программировать не умеешь, ну да)))
  Ответить с цитированием
Старый 04.07.2013, 09:04   #6   
Форумец
 
Аватар для Daggerfall
 
Сообщений: 1,880
Регистрация: 21.04.2004
Возраст: 38

Daggerfall вне форума Не в сети
Цитата:
Сообщение от Spectator Посмотреть сообщение
если нет возможности вгрузить файл, создай SQL с INSERT'ами всех значений.
а не UPDATE'ами?

Цитата:
Сообщение от Spectator Посмотреть сообщение
только ты программировать не умеешь, ну да)))
не-не, ни в коем случае )
  Ответить с цитированием
Старый 04.07.2013, 09:43   #7   
Форумец
 
Сообщений: 292
Регистрация: 21.01.2011

sape вне форума Не в сети
Почему бы не создать tmp таблицу, через pma в неё не сделать импор csv, затем полю одной таблицы (цена) не присвоить значение поля другой при совпадении значения другого поля (артикула) обычным sql запросом?
--
а ну вот же
Цитата:
Сообщение от Daggerfall Посмотреть сообщение
хмм, покурил маны, погуглил. похоже, копать мне вот в этом направлении, не?
http://stackoverflow.com/questions/1...-from-csv-file
сам же написал
  Ответить с цитированием
Старый 04.07.2013, 09:59   #8   
Форумец
 
Аватар для Spectator
 
Сообщений: 39,860
Регистрация: 27.05.2003
Возраст: 46

Spectator вне форума Не в сети
Цитата:
Сообщение от Daggerfall Посмотреть сообщение
а не UPDATE'ами?
нет, не UPDAT'ами.
нужно переделать базу данных и выделить всю информацию, которую предполагается изменять подобным образом, в отдельную таблицу.
если это еще не сделано.
  Ответить с цитированием
Старый 04.07.2013, 10:51   #9   
Форумец
 
Аватар для Daggerfall
 
Сообщений: 1,880
Регистрация: 21.04.2004
Возраст: 38

Daggerfall вне форума Не в сети
Цитата:
Сообщение от Spectator Посмотреть сообщение
нет, не UPDAT'ами.
нужно переделать базу данных и выделить всю информацию, которую предполагается изменять подобным образом, в отдельную таблицу.
если это еще не сделано.
в принципе, до подобной мысли допёр, но, мля, сколько же обращений к этой конкретной таблице редактировать придется... prestashop, мать его.
  Ответить с цитированием
Старый 04.07.2013, 11:03   #10   
Форумец
 
Аватар для Spectator
 
Сообщений: 39,860
Регистрация: 27.05.2003
Возраст: 46

Spectator вне форума Не в сети
Цитата:
Сообщение от Daggerfall Посмотреть сообщение
в принципе, до подобной мысли допёр, но, мля, сколько же обращений к этой конкретной таблице редактировать придется... prestashop, мать его.
я не знаю как там в этом вашем веб-дизайне, но в программировании это совершенно будничное дело - поменять что-то в самом корне и приводить всю программу к новому знаменателю. ежедневное занятие, по сути. а ты уже хрен знает сколько времени не можешь решиться, как будто собрался взбираться на Эверест.
кабы тебе пришлось менять таблицу, к которой было обращение из 300 разных форм, с десятком запросов на некоторых из них, как у меня было в одной конторе почти сразу после трудоустройства, ты бы что стал делать, повесился бы?))
  Ответить с цитированием
Старый 04.07.2013, 12:11   #11   
Форумец
 
Аватар для Daggerfall
 
Сообщений: 1,880
Регистрация: 21.04.2004
Возраст: 38

Daggerfall вне форума Не в сети
Spectator, а я руки и не опускаю )
  Ответить с цитированием
Поиск в теме: 



Быстрый переход:

  Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Support by DrIQ & Netwind