Добавьте 1 к полю

В Java все находится в форме класса.

Если вы хотите использовать любой объект, тогда у вас есть две фазы:

  1. Объявить
  2. Инициализация

Пример:

  • Объявление: Object a;
  • Инициализация: a=new Object();

То же самое для концепции массива

  • Объявление: Item i[]=new Item[5];
  • Инициализация: i[0]=new Item();

Если вы не дают секцию инициализации, тогда возникает NullpointerException.

23
задан sorak 20 February 2018 в 04:25
поделиться

7 ответов

Я получаю downmodded для этого?

$sql = "UPDATE skills SET level = level+1 WHERE id = $id";
$result = $db->sql_query($sql);
$db->sql_freeresult($result);

В конкретном случае Teifion, списки phpBB DDL, что конкретное поле как NOT NULL, таким образом, нет никакой опасности увеличить ПУСТОЙ УКАЗАТЕЛЬ.

В общем случае, Вы не должны использовать ПУСТОЙ УКАЗАТЕЛЬ для представления нуля. Постепенное увеличение ПУСТОГО УКАЗАТЕЛЯ должно давать ответ ПУСТОГО УКАЗАТЕЛЯ. Если Вы - вид дезинформированного разработчика, который думает NULL=0, ступите далеко от клавиатуры и найдите другое времяпрепровождение, Вы просто делаете жизнь трудной для остальной части нас. Конечно, это - компьютерная индустрия и кто мы должны сказать, что Вы неправы? Если Вы не ошибаетесь, используйте

$sql = "UPDATE skills SET level = COALESCE(level,0)+1 WHERE id = $id";

..., но давайте столкнемся с ним: Вы неправы. Если все запускают на уровне 0, то Ваш DDL должен включать

level INT DEFAULT '0' NOT NULL

в случае, если программисты забывают устанавливать его, когда они создают запись. Если не все запускают на уровне 0, то пропустите ЗНАЧЕНИЕ ПО УМОЛЧАНИЮ и вынудите программиста предоставить значение на создании. Если некоторые люди вне уровней, для кого наличие уровня является бессмысленной вещью, то добавление одного к их уровню одинаково не имеет никакого значения. В этом случае отбросьте NOT NULL от DDL.

30
ответ дан Josh 29 November 2019 в 01:30
поделиться

Таким образом:

UPDATE skills
SET level = level + 1
WHERE id = $id
11
ответ дан angry person 29 November 2019 в 01:30
поделиться

С PDO и подготовленным запросом:

$query = $db->prepare("UPDATE skills SET level = level + 1 WHERE id = :id")
$query->bindValue(":id", $id);
$result = $query->execute();
6
ответ дан Imran 29 November 2019 в 01:30
поделиться

$sql = "навыки ОБНОВЛЕНИЯ УСТАНАВЛИВАЮТ уровень = уровень + 1 ГДЕ идентификатор = $id";

я просто надеюсь, что Вы правильно санируете $id в другом месте в Вашем коде!

3
ответ дан Mat 29 November 2019 в 01:30
поделиться

попробуйте это

UPDATE skills SET level = level + 1 WHERE id = $id
2
ответ дан Satish Sharma 29 November 2019 в 01:30
поделиться

Как насчет:

UPDATE skills SET level = level + 1 WHERE id = $id;
1
ответ дан Satish Sharma 29 November 2019 в 01:30
поделиться

Циновка: это - то, что вставило в от вопроса. Это не было отредактировано, таким образом, я приписываю это ошибке в Скидке с цены. Но достаточно странно я заметил.

Также: да, mysql_escape_string()!

-1
ответ дан Dmytro Zarezenko 29 November 2019 в 01:30
поделиться
Другие вопросы по тегам:

Похожие вопросы: