Название: Как добавить вручную мак через sql? Отправлено: whix от 14 Октября 2012, 21:01:41 Пдскажите плиз, как через sql добавить вручную мак адрес в доп поле?
Через dopdata или dopvalues лучше? И откуда взять значение ревизии Скрипт на баше Название: Re: Как добавить вручную мак через sql? Отправлено: stix от 14 Октября 2012, 21:06:41 через dopvalues
dopdata это view 50.33, от 50.32 вроде как отличается как раз свойствами ревизий. Название: Re: Как добавить вручную мак через sql? Отправлено: stix от 15 Октября 2012, 14:21:03 вот кстати нашел by Efendy
Цитировать Ревизия должна быть уникальна не только в пределах одного юзера, а для всех клиентов. В самом NoDeny номер ревизии формируется таким образом: в dopvalues вставляется пустая запись (parent_id=0). Mysql после вставки возвращает last_insert_id, который берется из поля line_id - это и есть номер ревизии. С этим номером вставляются все данные для текущего клиента, удаляется пустая запись. Такая схема используется для того, чтобы гарантировать уникальность ревизии т.к. если сделать select max(revision)+1, а потом делать Insert, то если параллельно какой-либо админ сделает ту же самую операцию, то с некоторой вероятностью мог бы возникнуть конфликт ревизий. Если же переносить данные из другого биллинга, то можно завести переменную "номер ревизии" и инкрементить ее после вставки блока данных для каждого юзера. Важно. Схема с ревизиями замедляет работу, поэтому в 49.33 и 50.33 ревизий нет в dopvalues, т.е в этой таблице всегда актуальные значения. А ревизии хранятся в другой таблице, которая нужна чисто для history. 50.32 и 50.33 практически только этим и отличаются Название: Re: Как добавить вручную мак через sql? Отправлено: whix от 17 Октября 2012, 09:26:48 Спасибо, но так мне понял, как ревизию сделать
Версия 50.19 еще Название: Re: Как добавить вручную мак через sql? Отправлено: 0xbad0c0d3 от 17 Октября 2012, 11:15:52 Код: sub insert_dd{ Код: &insert_dd({ Данная ф-я вставляет данные в допполя, и если во входных параметрах будет только поле 4, то, в результате, все остальные данные шаблона, в котором находится поле 4 уйдут в историю, т.е. станут неактуальными. Название: Re: Как добавить вручную мак через sql? Отправлено: stix от 17 Октября 2012, 11:48:08 на PHP я делал так:
$id и $mac передаются как локальные переменные в функцию правда adminid не учитывается Код: mysql_query("INSERT INTO dopvalues SET parent_id=0"); Название: Re: Как добавить вручную мак через sql? Отправлено: whix от 17 Октября 2012, 14:09:09 Спасибо, получилось!
Название: Re: Как добавить вручную мак через sql? Отправлено: stix от 27 Февраля 2013, 11:32:54 на всякий случай напишу.
при такой вставке в новую ревизию добавится только мак, если были старые значения, они в новую ревизию не перейдут. а останутся в старой. |