TraffPro Forum » Система TraffPro » Вопросы

Поиск | Новые сообщения | Подписки

Ответить
 Таблица clients_addr, 1.3.4
vol4
9 марта 2010 13:06
Сообщение #1


Новичок
  • 17

Репутация: - 0 +
Группа: Посетители
Сообщений: 48
Регистрация: 2.07.2009
ICQ:--

После удаление клиента из базы, не удаляются соответствующие поля в таблице clients_addr.

 

Sly, подскажи куда можно ручками дописать кусочек для удаления записи из этой таблице при удалении клиента. Я использую эту таблицу для своих нужд - оч надо :). Спасибо.


--------------------
Linux 2.6.34, TP 1.3.4 Office
Перейти в начало страницы
vol4
9 марта 2010 13:32
Сообщение #2


Новичок
  • 17

Репутация: - 0 +
Группа: Посетители
Сообщений: 48
Регистрация: 2.07.2009
ICQ:--

Я понял. Клиенты из базы вообще не удаляются, а меняется delta... буду думать..

А почему при удалении клиента нельзя просто брать и удалять его?

Нифига не понимаю как идет сопоставление поля из clients с полем из clients_addr.


Сообщение отредактировал vol4 - 9 марта 2010 13:43
--------------------
Linux 2.6.34, TP 1.3.4 Office
Перейти в начало страницы
vol4
9 марта 2010 14:48
Сообщение #3


Новичок
  • 17

Репутация: - 0 +
Группа: Посетители
Сообщений: 48
Регистрация: 2.07.2009
ICQ:--

Кажется разобрался.

Таблица clients, поле id имеет auto_increment. Я так понял, что id из clients дублируется в id таблицы clients_addr и всегда совпадает.

Пойду впихну удаление полей из clients_addr. Это может создать проблемы системы в будущем?


--------------------
Linux 2.6.34, TP 1.3.4 Office
Перейти в начало страницы
Sly
9 марта 2010 15:26
Сообщение #4


Руководитель Проекта
  • 102

Репутация: - 26 +
Группа: Администраторы
Сообщений: 1691
Регистрация: 15.02.2008
ICQ:Sly
Ручками залезете базу поломаете.
Перейти в начало страницы
vol4
9 марта 2010 15:28
Сообщение #5


Новичок
  • 17

Репутация: - 0 +
Группа: Посетители
Сообщений: 48
Регистрация: 2.07.2009
ICQ:--

Не стал изменять model_clients.php, так как если удальть поле из таблицы clients_addr через этот php скрипт, то после не срабатывает (или срабатывает с ошибкой) какая-то из процедур по изменению дельты = 5 (PREP DELETE RECORD) на дельту = 2 (DEL RECORD). Я не нашел зависимости двух таблиц в данном случае. Может искал плохо.

Пока сделал удаление нужного мне поля из clients_addr через процедуру client_delete_or_disable, изменив ее для этого.


Сообщение отредактировал vol4 - 9 марта 2010 05:29
--------------------
Linux 2.6.34, TP 1.3.4 Office
Перейти в начало страницы
vol4
9 марта 2010 15:31
Сообщение #6


Новичок
  • 17

Репутация: - 0 +
Группа: Посетители
Сообщений: 48
Регистрация: 2.07.2009
ICQ:--

Цитата: Sly
Ручками залезете базу поломаете.

Рустам, ну какие косяки могут быть в связи с внесенными мной изменениями?

Дописал в роцедуру только одну строку:

...

if D = 5 THEN
UPDATE clients set delta=2 where id=ID_CL;
DELETE from clients_addr where id=ID_CL;
END IF;

...

Для меня осталось загадкой, для чего хранить в базе удаленных клиентов. Чтоб восстановить (при чем я так понимаю только ручками) при острой и случайной необходимости?


Сообщение отредактировал vol4 - 9 марта 2010 05:58
--------------------
Linux 2.6.34, TP 1.3.4 Office
Перейти в начало страницы
vol4
9 марта 2010 18:09
Сообщение #7


Новичок
  • 17

Репутация: - 0 +
Группа: Посетители
Сообщений: 48
Регистрация: 2.07.2009
ICQ:--
Ладно, постараюсь изменить в своих скриптах запрос к базе с учетом таблицы clients и поля delta, чтоб в будущем не быть привязанным к изменениям в случае обновления TP.

--------------------
Linux 2.6.34, TP 1.3.4 Office
Перейти в начало страницы
 
« · Вопросы · »
Быстрый ответ Ответить
1чел. читают эту тему (гостей: 1)
Пользователей: 0

  Сейчас: 31 июля 2010 01:35