База ответов ИНТУИТ

Основы проектирования реляционных баз данных

<<- Назад к вопросам

Дана таблица PROJECT, созданная командой
CREATE TABLE PROJECT (PROJNO  	char(8) NOT NULL,PNAME  	char(25),BUDGET  	dec(9,2),PRIMARY KEY (PROJNO));

Ниже приведено изменение в определении таблицы для того, чтобы иметь возможность различать законченные проекты и переносить их в таблицу PROJECT_OLD. Упрощает ли данное изменение сопровождение таблицы?

CREATE TABLE PROJECT (PROJNO  	char(8) NOT NULL,FINISH	char(1) NOT NULL,PNAME  	char(25),BUDGET  	dec(9,2),PRIMARY KEY (PROJNO, FINISH));

Комментарий к Задаче 6. Добавление дополнительных колонок в первичный ключ приведет к дополнительным накладным расходам. Отбор записей для перенесения и последующего удаления с помощью переменной типа дата менее выгоден, чем использование односимвольной переменной. Спорным остается вопрос наложения на переменную FINISH ограничения NOT NULL. Это целесообразно сделать, но это приводит к лишней операции при вводе проекта - явного указания, что он не завершен.

(Отметьте один правильный вариант ответа.)

Варианты ответа
нет(Верный ответ)
да
Похожие вопросы
Дана таблица PROJECT, созданная командой
CREATE TABLE PROJECT (PROJNO  	char(8) NOT NULL,PNAME  	char(25),BUDGET  	dec(9,2),PRIMARY KEY (PROJNO));

Ниже приведено изменение в определении таблицы для того, чтобы иметь возможность различать законченные проекты и переносить их в таблицу PROJECT_OLD. Упрощает ли данное изменение сопровождение таблицы?

CREATE TABLE PROJECT (PROJNO  	char(8) NOT NULL,FINISH	char(1)PNAME  	char(25),BUDGET  	dec(9,2),PRIMARY KEY (PROJNO));

Комментарий к Задаче 6. Добавление дополнительных колонок в первичный ключ приведет к дополнительным накладным расходам. Отбор записей для перенесения и последующего удаления с помощью переменной типа дата менее выгоден, чем использование односимвольной переменной. Спорным остается вопрос наложения на переменную FINISH ограничения NOT NULL. Это целесообразно сделать, но это приводит к лишней операции при вводе проекта - явного указания, что он не завершен.

Дана таблица PROJECT, созданная командой
CREATE TABLE PROJECT (PROJNO  	char(8) NOT NULL,PNAME  	char(25),BUDGET  	dec(9,2),PRIMARY KEY (PROJNO));

Ниже приведено изменение в определении таблицы для того, чтобы иметь возможность различать законченные проекты и переносить их в таблицу PROJECT_OLD. Упрощает ли данное изменение сопровождение таблицы?

CREATE TABLE PROJECT (PROJNO  	char(8) NOT NULL,S_DATE	date NOT NULL,F_DATE	date,PNAME  	char(25),BUDGET  	dec(9,2),PRIMARY KEY (PROJNO)); 

Комментарий к Задаче 6. Добавление дополнительных колонок в первичный ключ приведет к дополнительным накладным расходам. Отбор записей для перенесения и последующего удаления с помощью переменной типа дата менее выгоден, чем использование односимвольной переменной. Спорным остается вопрос наложения на переменную FINISH ограничения NOT NULL. Это целесообразно сделать, но это приводит к лишней операции при вводе проекта - явного указания, что он не завершен.

Дана таблица PROJECT, созданная командой
CREATE TABLE PROJECT (PROJNO  	char(8) NOT NULL,PNAME  	char(25),BUDGET  	dec(9,2),PRIMARY KEY (PROJNO));

Ниже приведено изменение в определении таблицы для того, чтобы иметь возможность различать законченные проекты и переносить их в таблицу PROJECT_OLD. Упрощает ли данное изменение сопровождение таблицы?

CREATE TABLE PROJECT (PROJNO  	char(8) NOT NULL,S_DATE	date NOT NULL,F_DATE	date,PNAME  	char(25),BUDGET  	dec(9,2),PRIMARY KEY (PROJNO, S_DATE));

Комментарий к Задаче 6. Добавление дополнительных колонок в первичный ключ приведет к дополнительным накладным расходам. Отбор записей для перенесения и последующего удаления с помощью переменной типа дата менее выгоден, чем использование односимвольной переменной. Спорным остается вопрос наложения на переменную FINISH ограничения NOT NULL. Это целесообразно сделать, но это приводит к лишней операции при вводе проекта - явного указания, что он не завершен.

Решите задачу разрешения связи многие-ко-многим для следующей ситуации. Дано отношение многие ко многим

Требуется разрешить это отношение.

Решение.

create table CUSTOMER(CUSTOMER_NO		NUMBER(6) 		not null,CUSTOMER_NAME		VARCHAR2(45)	null,CUSTOMER_ADDRESS	VARCHAR2(35)	null,CUSTOMER_CITY		VARCHAR2(45)	null,CUSTOMER_STATE	CHAR(2)		null,CUSTOMER_ZIP		NUMBER(5)		null,primary key (CUSTOMER_NO))create table SALESMAN(SALESMAN_NO		NUMBER(6)		not null,SALESMAN_NAME 	VARCHAR2(45) 	null,SALESMAN_EMP_NO	NUMBER(6)		null,SALESMAN_YTD_SALES	NUMBER(9,2)	null,SALESMAN_QUOTA	NUMBER(6)		null,SALESMAN_PROD_GRP	CHAR(8)		null,primary key (SALESMAN_NO))create table CUSTOMER_ SALESMAN(CUSTOMER_NO	NUMBER(6)		not null,SALESMAN_NO	NUMBER(6)		not null,primary key (CUSTOMER_NO, SALESMAN_NO))
Решите задачу разрешения связи многие-ко-многим для следующей ситуации. Дано отношение многие ко многим

Требуется разрешить это отношение.

Решение.

create table CUSTOMER(CUSTOMER_NO		NUMBER(6) 		not null,CUSTOMER_NAME		VARCHAR2(45)	null,CUSTOMER_ADDRESS	VARCHAR2(35)	null,CUSTOMER_CITY		VARCHAR2(45)	null,CUSTOMER_STATE	CHAR(2)		null,CUSTOMER_ZIP		NUMBER(5)		null,primary key (CUSTOMER_NO))create table SALESMAN(SALESMAN_NO		NUMBER(6)		not null,SALESMAN_NAME 	VARCHAR2(45) 	null,SALESMAN_EMP_NO	NUMBER(6)		null,SALESMAN_YTD_SALES	NUMBER(9,2)	null,SALESMAN_QUOTA	NUMBER(6)		null,SALESMAN_PROD_GRP	CHAR(8)		null,primary key (SALESMAN_NO))create table CUSTOMER_ SALESMAN(CUSTOMER_NO		NUMBER(6)		not null,SALESMAN_NO		NUMBER(6)		not null)
Решите задачу разрешения связи многие-ко-многим для следующей ситуации. Дано отношение многие ко многим

Требуется разрешить это отношение.

Решение.

create table CUSTOMER(CUSTOMER_NO		NUMBER(6) 		not null,CUSTOMER_NAME		VARCHAR2(45)	null,CUSTOMER_ADDRESS	VARCHAR2(35)	null,CUSTOMER_CITY		VARCHAR2(45)	null,CUSTOMER_STATE	CHAR(2)		null,CUSTOMER_ZIP		NUMBER(5)		null,primary key (CUSTOMER_NO))create table SALESMAN(SALESMAN_NO		NUMBER(6)		not null,SALESMAN_NAME 	VARCHAR2(45) 	null,SALESMAN_EMP_NO	NUMBER(6)		null,SALESMAN_YTD_SALES	NUMBER(9,2)	null,SALESMAN_QUOTA	NUMBER(6)		null,SALESMAN_PROD_GRP	CHAR(8)		null,primary key (SALESMAN_NO))create table CUSTOMER_ SALESMAN(CUSTOMER_NO	NUMBER(6)		not null,SALESMAN_NO	NUMBER(6)		not null,primary key (CUSTOMER_NO, SALESMAN_NO),foreing key (CUSTOMER_NO) references CUSTOMER,foreign key  (SALESMAN_NO) references SALESMAN)
Решите задачу разрешения связи многие-ко-многим для следующей ситуации. Дано отношение многие ко многим

Требуется разрешить это отношение.

Решение.

create table CUSTOMER(CUSTOMER_NO		NUMBER(6) 		not null,CUSTOMER_NAME		VARCHAR2(45)	null,CUSTOMER_ADDRESS	VARCHAR2(35)	null,CUSTOMER_CITY		VARCHAR2(45)	null,CUSTOMER_STATE	CHAR(2)		null,CUSTOMER_ZIP		NUMBER(5)		null,primary key (CUSTOMER_NO))create table SALESMAN(SALESMAN_NO		NUMBER(6)		not null,SALESMAN_NAME 	VARCHAR2(45) 	null,SALESMAN_EMP_NO	NUMBER(6)		null,SALESMAN_YTD_SALES	NUMBER(9,2)	null,SALESMAN_PROD_GRP	CHAR(8)		null,primary key (SALESMAN_NO))create table CUSTOMER_ SALESMAN(CUSTOMER_NO	NUMBER(6)			not null,SALESMAN_NO	NUMBER(6)			not null,SALESMAN_QUOTA	NUMBER(6)		null,primary key (CUSTOMER_NO, SALESMAN_NO),foreing key (CUSTOMER_NO) references CUSTOMER,foreign key  (SALESMAN_NO) references SALESMAN)
Таблица базы данных СУБД SQLBASE создана командой
CREATE TABLE CONTACT(CUSTOMER_ID CHAR(5) NOT NULL,CONTACT_NAME VARCHAR(15) NOT NULL,CONTACT_PHONE DECIMAL(10,0),CONTACT_TEXT LONG VARCHAR,PRIMARY KEY (CUSTOMER_ID, CONTACT_NAME)FOREING KEY CUSTKEY (CUSTOMER_ID) REFERENCES CUSTOMER ON DELETE RESTRICT)PCTFREE 15;
Число строк в таблице = 175000. Средняя длина поля LONG VAR CHAR = 10. Оцените ее размер (в страницах).
Таблица базы данных СУБД SQLBASE создана командами
CREATE TABLE CUSTOMER(CUSTOMER_ID CHAR(5) NOT NULL,CUSTOMER_NAME VARCHAR(10),CUSTOMER_ADDR VARCHAR(30),CUSTOMER_RATING CHAR(5),PRIMARY KEY(CUSTOMER_ID))PCTFREE 15;CREATE UNIQUE CLUSTERED HASHED INDEX NDX_CUSTOMER ON CUSTOMER (CUSTOMER_ID) SIZE 47628;
Число строк в таблице = 50000. Оцените ее размер (в страницах).
В базе данных Oracle имеется три табличных пространства - системное с именем sys_ts, по умолчанию с именем default_ts и пользователя Usr100 с именем usr100_ts. Пользователь Usr100 создает таблицу командой
CREATE TABLE CONTACT(CUSTOMER_ID CHAR(5) NOT NULL,CONTACT_NAME VARCHAR(25) NOT NULL,CONTACT_PHONE DECIMAL(10,0),CONTACT_TEXT LONG VARCHAR,PRIMARY KEY (CUSTOMER_ID, CONTACT_NAME)FOREING KEY CUSTKEY (CUSTOMER_ID) REFERENCES CUSTOMER ON DELETE RESTRICT)PCTFREE 15;
В каком табличном пространстве будет находиться таблица CONTACT?