- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
/**
* Замена auto_increment
* @param string $name - наименование таблицы
* @param string $id - наименование индексной записи таблицы
* @param ADODB-object $db - объект ADOConnection
*
* @return int - если удалось выделить следующий ID, false в противном случае
*/
function CountId($name, $id, & $db)
{
$selection = $db->Execute('SELECT MAX('.$id.') as id
FROM '.$name);
if ($selection) {
return ($selection->fields['id'] + 1);
} else {
return false;
}
}
В каком-то древненьком проекте решили отказаться от автоинкремента. :-) Накалякали функцию для его замены.
В мускуле автоинкремент есть.
Чуть ниже встречал быдлокод, где айдишник рандомом генерился, но им можно было повесить. Как вариант решения придумал то же самое)
767
Так в чем же тут говнокодность?
В многопользовательском режиме будет иногда падать без видимых причин, отлаживать заебёшься...
[quote=Говногость]В многопользовательско м режиме будет иногда падать без видимых причин, отлаживать за***шься[/quote]
Есть такие понятия как транзакция и исключение (exception). Правильно используй и ничего отлаживать не за***шься...