Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Delphi [игнор отключен] [закрыт для гостей] / FireDAC вставка записи в таблицу / 10 сообщений из 10, страница 1 из 1
01.12.2017, 16:35:27
    #39562675
TryFireDAC
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
FireDAC вставка записи в таблицу
Создана таблица в pgAdmin 4 PostgreSQL:
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
CREATE TABLE public.list2
(
    id integer NOT NULL DEFAULT nextval('list2_id_seq'::regclass),
    timestring text COLLATE pg_catalog."default" NOT NULL,
    timetime timestamp without time zone NOT NULL,
    mesto text COLLATE pg_catalog."default" NOT NULL,
    itogo integer NOT NULL,
    sostav text COLLATE pg_catalog."default" NOT NULL,
    reservstring text COLLATE pg_catalog."default",
    reservint integer,
    CONSTRAINT list2_pkey PRIMARY KEY (id)
)
WITH (
    OIDS = FALSE
)
TABLESPACE pg_default;

ALTER TABLE public.list2
    OWNER to postgres;



Поле ID это PRIMARY KEY. Пытаюсь вставить запись в эту таблицу из кода:
INSERT INTO list2 VALUES(:timestring, :timetime, :mesto, :itogo, :sostav);


Получаю ошибку:
Класс: EPgNativeException Сообщение: [FireDAC][Phys][PG][libpq] ОШИБКА: столбец "id" имеет тип integer, а выражение - character varying.
Перепишите выражение или преобразуйте его тип.

Не могу понять при чем здесь автоинкрименый первичный ключ поля id?
Подскажите, пожалуйста, как исправить и как вставлять запись в эту таблицу?
Спасибо.
...
Рейтинг: 0 / 0
01.12.2017, 16:41:18
    #39562682
goldmi45
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
FireDAC вставка записи в таблицу
TryFireDAC,

первое поле - id, а не timestring
Перечислите те поля, которые вы собираетесь вставлять.
...
Рейтинг: 0 / 0
01.12.2017, 16:48:40
    #39562692
TryFireDAC
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
FireDAC вставка записи в таблицу
Торможу и не понимаю... :(
id должно само автоматом вставляться как первичный ключ.
Я не могу написать, например, так:
INSERT INTO list2 VALUES(:id, :timestring, :timetime, :mesto, :itogo, :sostav);
Так как только база данных знает, что именно вставить в id.
...
Рейтинг: 0 / 0
01.12.2017, 17:02:03
    #39562713
Tactical Nuclear Penguin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
FireDAC вставка записи в таблицу
непонятно только при чем здесь Delphi
попробуйте выполнить ваш запрос в родном для postgree sql редакторе
...
Рейтинг: 0 / 0
01.12.2017, 17:04:33
    #39562717
FireDAC вставка записи в таблицу
авторнепонятно только при чем здесь Delphi

FireDAC
...
Рейтинг: 0 / 0
01.12.2017, 17:05:43
    #39562720
Tactical Nuclear Penguin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
FireDAC вставка записи в таблицу
ВродеПонятноавторнепонятно только при чем здесь Delphi

FireDAC

попробовал?
...
Рейтинг: 0 / 0
01.12.2017, 17:14:24
    #39562733
TryFireDAC
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
FireDAC вставка записи в таблицу
авторпопробуйте выполнить ваш запрос в родном для postgree sql редакторе

В pgAdmin:
INSERT INTO list2 VALUES("20.11.17 20:47:49", "20.11.17 20:47:49", "Вася", "Вася", "Вася");
Ответ:
Query returned successfully in 840 msec.
...
Рейтинг: 0 / 0
01.12.2017, 17:24:25
    #39562747
TryFireDAC
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
FireDAC вставка записи в таблицу
Нет, pgAdmin в PostgreSQL 10 полный отстой. Если даже написать полную ерунду всегда пишет:
Query returned successfully
Хрень...
...
Рейтинг: 0 / 0
01.12.2017, 17:45:06
    #39562771
d7i
d7i
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
FireDAC вставка записи в таблицу
TryFireDAC,
я PostgreSQL в глаза не видел, но обычно вставку пишут так:

INSERT INTO таблица(список_полей) VALUES(список_значений)...

Всегда работает 100%....
...
Рейтинг: 0 / 0
01.12.2017, 19:40:46
    #39562835
TryFireDAC
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
FireDAC вставка записи в таблицу
Извините, все получилось. Заодно ушел с PostgreSQL 10 на 9 версию. Уж больно глючно было в 10-ке...
...
Рейтинг: 0 / 0
Форумы / Delphi [игнор отключен] [закрыт для гостей] / FireDAC вставка записи в таблицу / 10 сообщений из 10, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]