ОБНОВИТЬ имя_таблицы УСТАНОВИТЬ col_name = varchar, ГДЕ col_name равно НУЛЮ;

#sql #postgresql #sql-update #string-constant

#sql #postgresql #sql-обновление #строка-константа

Вопрос:

Следующее ОБНОВЛЕНИЕ завершается ошибкой :-

 UPDATE table_name SET col_name = varchar WHERE col_name is NULL;
  

Сообщение об ошибке :-

 ERROR:  column "varchar" does not exist
  

В то время как упомянутый ниже выполняется успешно :-

 UPDATE table_name SET col_name = 889977 WHERE col_name is NULL;
  

Я проверил pg_typeof столбец — col_name есть character varying . Пожалуйста, помогите.

Комментарии:

1. Если » varchar » должен быть строковым литералом, заключите его в одинарные кавычки: 'varchar' . В противном случае ваше утверждение не имеет для меня особого смысла.

2. @sticky бит — Да, это проблема — спасибо

Ответ №1:

я думаю, вы пропустили кавычки для строки

 UPDATE table_name SET col_name = 'varchar' WHERE col_name is NULL;