Duplicate entry '0' for key 'PRIMARY'

dev

Новичок
Есть таблица test в ней есть uid поле созданное в формате
"uid int NOT NULL PRIMARY KEY","'0'"

и есть запрос
PHP:
    $result = $db->query("INSERT INTO test(username, passhash1, email, ctime, user_level, lastlogin_time, lastlogin_ip, confirm, can_comment)
                      VALUES('".$name."','".$password."','".$email."','".(int)time()."','0','','".safeEscape($_SERVER["REMOTE_ADDR"])."','".$confirmCode."', '1')");


при выполнение выдает эрор MySQL Error: 1062 ( Duplicate entry '0' for key 'PRIMARY')
как я понимаю оно не может записать данные потому что не может задать айди, как я понимаю мне нужно проверять макс id и добавлять +1 скажите пожалуйста куда мне вставить
SELECT MAX(`uid`) FROM `test`
чтобы запрос был рабочий? спасибо
 

Фанат

oncle terrible
Команда форума
никуда

вставить надо auto_increment при создании поля

сам запрос - жесть.
даже адовая функция safeEscape(!) - и та используется не для всех полей.
 
  • Like
Реакции: dev

dev

Новичок
возможно решить данный вопрос без использования auto_increment? если нет то как применить auto_increment примерно к 130 тысячам записей в uid без пересоздания поля
 

Фанат

oncle terrible
Команда форума
"кое-как" - это просто фигура речи или есть конкретные проблемы?
 
Сверху