Следующий запрос фактически выбирает значение типа ROW
:
SELECT (id, name, description) FROM table_name;
Этот синтаксис сам по себе не очень полезен, и, как правило, вы будете использовать его, если выполняете INSERT INTO ... SELECT
в таблицу, которая имела тип строки в своем определении. Вот пример того, как вы можете использовать это.
CREATE TYPE your_type AS (
id INTEGER,
name VARCHAR,
description VARCHAR
);
CREATE TABLE your_table (
id INTEGER,
t your_type
);
INSERT INTO your_table (id, t)
SELECT 1, (id, name, description)
FROM table_name;
Из документации Postgres о составных типах:
При создании таблицы составной тип также создается автоматически с тем же именем, что и таблица. , для представления типа строки таблицы.
blockquote>Итак, вы уже работали с типами строк, независимо от того, знали ли вы это.
Да, можно снова использовать a BackgroundWorker
- но можно только использовать его однажды в любое время - не одновременно. Если бы операции отличаются, однако, я использовал бы отдельного рабочего. Иначе необходимо будет отсоединить события, сцепить корректные события, и т.д. Грязные.