insert

Поиск
Список
Период
Сортировка
От alan
Тема insert
Дата
Msg-id 2e208bc6-1bb8-4170-809f-77ab63a15bf4@l18g2000yql.googlegroups.com
обсуждение исходный текст
Ответы Re: insert  ("Kevin Grittner" <Kevin.Grittner@wicourts.gov>)
Список pgsql-performance
next question.

I have a product table with a 'category" column that I want to
maintain in a separate table.

CREATE TABLE products (
                product_id INTEGER DEFAULT
nextval('product_id_seq'::regclass) NOT NULL,
                name VARCHAR(60) NOT NULL,
                category SMALLINT  NOT NULL,
                CONSTRAINT product_id PRIMARY KEY (product_id)
);
CREATE TABLE products (
                category_id INTEGER DEFAULT
nextval('category_id_seq'::regclass) NOT NULL,
                name VARCHAR(20) NOT NULL,
                CONSTRAINT category_id PRIMARY KEY (category_id)
);

Every product must have a category,
Since many (but not all) products have the same category I only want 1
table with unique categories.

To do the insert into the products table I need to retrieve or insert
the category_id in categories first.
Which means more code on my client app (if ($cat_id =
get_cat_id($cat)) }else { $cat_id = insert_cat($cat)})

Can I write a BEFORE ROW trigger for the products table  to runs on
INSERT or UPDATE to
 1. insert a new category & return the new category_id  OR
 2.  return the existing category_id for the (to be inserted row)

Alan
I donproducts.category to be a foreign key that points to the uniqie
category_id id in the want to keep I need to do get the cate

В списке pgsql-performance по дате отправления:

Предыдущее
От: Filippos
Дата:
Сообщение: heavy load-high cpu itilization
Следующее
От: Li Jin
Дата:
Сообщение: Performance penalty when using WITH