Могу ли я сделать элемент item.cost равным product.price * product.quantity при создании таблицы?

Я хочу, чтобы item.cost был продуктом.цена * продукт.количество..

Как я могу это сделать, когда я элемент таблицы ??

Вот мой код SQL:

create or replace type Product as Object(
product_code char(6);
product_name varchar2(6);
description clot(500);
price number(6,2);
constraint uniq_product_code primary key(product_code)
);
/

CREATE TYPE Products IS TABLE OF Product;

CREATE or replace type object Item  as Object(
item_code char(6);
quantity number(6);
cost number(11,2);
products Product;
constraint uniq_item_code primary key(item_code)
);
NESTED TABLE products STORE AS item_product;
/

Create  type Items is Table of Item;

CREATE or replace TYPE Contact_detail AS OBJECT (
   email    varchar2(30);
   address  VARCHAR2(50);
   telephone   varchar2(20);
);
/

Create or replace table Order(
order_number char(6);
order_name varchar2(6);
customer_contact_details Contact_detail;
date date;----
Items Item;
constraint uniq_order_number primary key(order_number)
);
NESTED TABLE Items STORE AS order_item;
/

Кроме того, я сделаю PL/SQL, чтобы пользователь мог вводить информацию от пользователя для вставки в таблицу заказов. Как автоматически определить количество предметов. количество n, 2‹=n‹=10.


person nickzheng    schedule 09.01.2013    source источник
comment
Действительно хороший вопрос, поскольку формат данных вашего примера не включает product_price или product_quantity. Я думаю, вы должны исправить вопрос, чтобы он имел смысл.   -  person Gordon Linoff    schedule 10.01.2013
comment
product_price и product_quantity — это атрибуты цены и количества в объектном продукте.   -  person nickzheng    schedule 10.01.2013
comment
Почему? Вы можете вычислить это на лету и должны сделать это...   -  person Ben    schedule 10.01.2013


Ответы (1)


Добавьте функцию-член в тип объекта Item для вычисления значения.

person OldProgrammer    schedule 13.01.2013