Первая wpdb вставка в новую таблицу mySql не работает
Я создал новую таблицу mySql, и мне нужно, чтобы первое поле было индексом и ключом.
Я не уверен, что понял терминологию правильно, но мне просто нужно, чтобы это поле автоматически увеличивалось на 1 при каждой вставке.
Поэтому я определил это поле как index
и дал ему auto_increment
приписывать.
Теперь я пытаюсь вставить первый ряд следующим образом:
$wpdb->insert('wp_branches', array(user_id=>$user_id, branchName=>$bname));
Поле индекса / ключа branchId
отсутствует в этом запросе, потому что я рассчитываю на то, что БД автоматически присвоит ему значение 1, поскольку это первая вставка, а затем увеличивает ее при каждой дополнительной вставке.
По какой-то причине строка не вставляется, а БД остается пустым.
Что я делаю неправильно?
2 ответа
Попробуй так:
$sql = $wpdb->prepare(
"INSERT INTO `wp_branches` (`user_id`,`branchName`) values (%d,%s)",
$user_id, $bname);
$wpdb->query($sql);
это также защитит вас от "уколов".
Модифицировано так:
$wpdb->insert('wp_branches', array('user_id' => $user_id, 'branchName' => $bname));