Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Обновление данные в ячейке таблицы, составить запрос

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
alerzo
Отправлено: 02 Октября, 2015 - 10:46:47
Post Id


Новичок


Покинул форум
Сообщений всего: 23
Дата рег-ции: Янв. 2014  


Помог: 0 раз(а)




Всем спасибо!

(Отредактировано автором: 03 Октября, 2015 - 17:45:19)

 
 Top
Faraon-san
Отправлено: 02 Октября, 2015 - 11:18:13
Post Id



Посетитель


Покинул форум
Сообщений всего: 318
Дата рег-ции: Сент. 2013  


Помог: 8 раз(а)




CODE (SQL):
скопировать код в буфер обмена
  1. UPDATE `users` SET `idjet` = concat(`idjet`, ':159263') WHERE `id` = 222
 
 Top
alerzo
Отправлено: 02 Октября, 2015 - 11:20:03
Post Id


Новичок


Покинул форум
Сообщений всего: 23
Дата рег-ции: Янв. 2014  


Помог: 0 раз(а)




Но ведь такой запрос добавит ":" всегда, в независимости есть записи или нет?..а мне нужно как описано выше.

(Отредактировано автором: 02 Октября, 2015 - 11:20:30)

 
 Top
Мелкий Супермодератор
Отправлено: 02 Октября, 2015 - 11:40:02
Post Id



Активный участник


Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009  
Откуда: Россия, Санкт-Петербург


Помог: 618 раз(а)




Сделайте нормальную связь М:М.


-----
PostgreSQL DBA
 
 Top
alerzo
Отправлено: 02 Октября, 2015 - 11:44:28
Post Id


Новичок


Покинул форум
Сообщений всего: 23
Дата рег-ции: Янв. 2014  


Помог: 0 раз(а)




не понял вас, как понять сделать нормальную связь?
 
 Top
Мелкий Супермодератор
Отправлено: 02 Октября, 2015 - 11:53:02
Post Id



Активный участник


Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009  
Откуда: Россия, Санкт-Петербург


Помог: 618 раз(а)




Т.е. приведите свои таблицы в нормальную форму. Это стандартный технический термин для реляционных баз.
Сейчас вы пытаетесь навесить какие-то костыли вместо нормальной связи многие-ко-многим.


-----
PostgreSQL DBA
 
 Top
alerzo
Отправлено: 02 Октября, 2015 - 11:55:43
Post Id


Новичок


Покинул форум
Сообщений всего: 23
Дата рег-ции: Янв. 2014  


Помог: 0 раз(а)




Очень помогло ваше сообщение, ну прямо до невозможности..все сразу стало на свои места, все вопросы исчезли..как вы считаете человек который просит помочь составить верный запрос в базу это может сделать? ..если бы я это умел наверное я бы не сидел на форуме php в теме новички..
 
 Top
Sail
Отправлено: 02 Октября, 2015 - 12:00:18
Post Id



Участник


Покинул форум
Сообщений всего: 1131
Дата рег-ции: Февр. 2014  


Помог: 57 раз(а)




alerzo, проще говоря, имеется ввиду создание таблицы с полями (iduser, idjet) с первичным ключом (primary key) по этим полям.
И не надо будет городить огород с конкатенациями, усложняющими поиск по значению idjet.
И меньше забот об актуальности этих id, ввиду возможности их контроля внешними ключами (foreign key).
 
 Top
Мелкий Супермодератор
Отправлено: 02 Октября, 2015 - 12:20:31
Post Id



Активный участник


Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009  
Откуда: Россия, Санкт-Петербург


Помог: 618 раз(а)




alerzo пишет:
как вы считаете человек который просит помочь составить верный запрос в базу это может сделать?

Да, имея предоставленное направление поиска, может.
Нормальная форма и связи (это реляционная база, реляционная! relation == связь) - самые азы реляционной СУБД.
Если не лезть в скучные академические дебри, то пары статей для знакомства с основными типов связей достаточно. Их всего-то встречаются многие-ко-многим, один-ко-многим (и зеркальное многие-ко-одному) и очень редко используемый элементарный один-ко-одному. А уж описаний реализации конкретной М:М более чем много. Эта связь реализуется отдельной таблицей, содержащей два поля: id из одной таблицы и id из второй таблицы. Одна строка - одна связь. Всё. Или вы считаете, что нагуглить и прочитать пару абзацев текста - непосильная задача?


-----
PostgreSQL DBA
 
 Top
alerzo
Отправлено: 02 Октября, 2015 - 12:34:05
Post Id


Новичок


Покинул форум
Сообщений всего: 23
Дата рег-ции: Янв. 2014  


Помог: 0 раз(а)




Спасибо!

(Отредактировано автором: 04 Октября, 2015 - 13:12:19)

 
 Top
alerzo
Отправлено: 02 Октября, 2015 - 17:44:19
Post Id


Новичок


Покинул форум
Сообщений всего: 23
Дата рег-ции: Янв. 2014  


Помог: 0 раз(а)




Вопрос актуален!
 
 Top
andrewkard
Отправлено: 02 Октября, 2015 - 18:26:21
Post Id


Участник


Покинул форум
Сообщений всего: 1372
Дата рег-ции: Нояб. 2014  


Помог: 30 раз(а)




alerzo
Лучше переделать, дешевле будет. Если уж очень хочется, то так:
CODE (SQL):
скопировать код в буфер обмена
  1.  
  2. UPDATE `users` SET `idjet` = (SELECT CASE WHEN LENGTH(`idjet`)>0 THEN concat(`idjet`, ':159263') ELSE "159263" END) WHERE `id` = 12
  3.  
 
 Top
alerzo
Отправлено: 02 Октября, 2015 - 22:25:45
Post Id


Новичок


Покинул форум
Сообщений всего: 23
Дата рег-ции: Янв. 2014  


Помог: 0 раз(а)




Спасибо

(Отредактировано автором: 04 Октября, 2015 - 13:11:39)

 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB