Как вставить CURRENT_TIMESTAMP в установку Drupal, настроенную для PostgreSQL - PullRequest
3 голосов
/ 20 октября 2010

Я использую drupal и базу данных pgsql, но после долгих поисков я все еще не могу понять, как поместить CURRENT_TIMESTAMP или now () в базу данных при вставке строки в таблицу.Установка now () для значения столбца по умолчанию не будет работать, потому что drupal не примет его в схеме базы данных, поэтому об этом не может быть и речи.

Текущий тип столбца - «отметка времени без часового пояса»или «время без часового пояса», которое принимает схема друпала.Теперь проблема в том, чтобы вставить туда дату.

Я попытался:

$now = format_date(time(), 'custom', 'Y-m-d H:i:s');

и вставить ее с заполнителем строки '% s', но pgsql дал мнеошибка.

Я также попытался изменить тип на целое и вставить с использованием функции php time (), и это не сработало (если бы я это сделал, я бы использовал его в других таблицах), так что, возможно, яЯ буду придерживаться типа метки времени, так как это имеет больше смысла.

1 Ответ

8 голосов
/ 20 октября 2010

Ниже вы найдете мои предложения по комментариям к вопросу.

  • Вы можете использовать «сейчас» как строку, заключенную в одинарные кавычки, но current_timestamp не должно быть в кавычках.
  • Если у вас есть отметка времени, вы должны заключить ее в одинарные кавычки: '2010-10-10 14: 13: 22'
  • Вы получаете ошибку «Недопустимый синтаксис», поскольку строка пуста.Убедитесь, что у вас действительно есть что-то в переменных и что это не пустая строка.
  • В вашей отметке времени, которую вы пытаетесь вставить, отсутствует дата.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...