1. Запустить базу данных Oracle Database 10g Express Edition:
Пуск | Программы | Oracle Database 10g Express Edition |
Start Database ► ф. Start Database; закрыть окно
2. Открыть домашнюю страницу базы данных
Пуск | Программы | Oracle Database 10g Express Edition | Go To Database Homepage ►
браузер по умолчанию (Internet Explorer); ф. Application Express Login;
Database Login: Username ← sys ; Password ← student ; кн. Login ► ф. Oracle
3. Создать пользовательское табличное пространство для представления объектов базы данных:
– придумать идентификатор для табличного пространства;
– программно указать табличное пространство для заданного пользователя:
ф. Oracle | кн. SQL ► кн. SQL Commands ► ф. Home>SQL>SQL Commands;
ввести код:
create tablespace Идентификатор_табл_простр datafile
'D:/oraclexe/oradata/XE/ Идентификатор_табл_простр.dbf' size 100M
кн. Run; ф. Results ► Statement processed.
4. Создать нового пользователя базы данных:
ф. Home>SQL>SQL Commands | ссылка Home ►
ф. Oracle | кн. Administration ► кн. Database Users ►
ф. Home>Administration>Manage Database Users; кн. Create> ►
ф. Create Database User: Username ← Имя ; Password ← Пароль ;
User Privileges ← Check All ; кн. Create ►
ф. Home>Administration>Manage Database Users с новым пользователем
5. Изменить табличное пространство имен для созданного пользователя базы данных:
ф. Oracle | кн. SQL ► кн. SQL Commands ►
ф. Home>SQL>SQL Commands; ввести код:
ALTER USER Имя пользователя
DEFAULT TABLESPACE Идентификатор_табл_простр;
кн. Run; ф. Results → User altered
6. Зайти в систему под именем созданного пользователя:
ф. Oracle | кн. Logout ► ф. You are now logged out |
кн. Login; Username ← пользователь ; Password ← пароль ; кн. Login ► ф. Oracle
7. Создать структуру таблицы Students (справочник студентов), относящуюся к созданному табличному пространству:
– создать последовательность studIDs (счетчик)
ф. Oracle | кн. Object Browser | кн. Create; выбр. Sequence ► ф. Seqence;
Sequence Name ← studIDs ; Start With ← 1 ; Minimum Value ← 1 ; Increment by ← 1 ;
кн. Next ► ф. Seqence; кн. Create
– создать таблицу
ф. Oracle | кн. Object Browser | кн. Create; выбр. Table ►
ф. Table – Create table; Table Name ← Students ;
– задать поле идентификатора студента (числовое обязательное):
ф. Table | Column Name ← stud_ID ; Type ← Number ; уст. Not Null;
перейти на следующую строку
– задать поле номера зачетной книжки (6 символов):
ф. Table | Column Name ← no_zk ; Type ← Varchar2 ; Scale ← 6 ;
уст. Not Null; перейти на следующую строку
– задать поля фамилии, имени, отчества (строковые):
ф. Table | Column Name ← fam ; Type ← Varchar2 ; Scale ← 20 ; уст. Not Null;
перейти на следующую строку
аналогично – для имени (im ) и отчества (ot );
– задать поле кода специальности spec (до 7 букв):
ф. Table | Column Name ← spec ; Type ← Varchar2 ; Scale ← 7 ; уст. Not Null;
перейти на следующую строку
– задать поле курса kurs (одна цифра):
ф. Table | Column Name ← kurs ; Type ← Varchar2 ; Scale ← 1 ; уст. Not Null;
перейти на следующую строку
– задать поле номера группы gr (две цифры):
ф. Table | Column Name ← gr ; Type ← Varchar2 ; Scale ← 2 ; уст. Not Null;
перейти на следующую строку
– задать поле даты рождения data_r :
ф. Table | кн. Add Column → Column Name ← data_r ; Type ← Date ; не уст. Not Null;
перейти на следующую строку
– задать поле биографии biogr (текст):
ф. Table | кн. Add Column → Column Name ← biogr ; Type ← Varchar2 ; Scale ← 4000 ;
не уст. Not Null;
– создать первичный ключ таблицы (поле stud_ID , счетчик)
кн. Next ► ф. Table – Primary Key; Primary Key ← уст. Populated from an existing sequence; Sequence Name ← studIDs ; Primary Key ← stud_ID ;
кн. Next ► ф. Table – Foreign Keys; кн. Next ► ф. Table – Constraints
– создать ограничение проверки значения поля kurs (диапазон от 1 до 6):
ф. Table – Constraints | уст. Check; ввести код kurs >= 1 AND kurs <= 6 ;
Name ← kurs_from_1_to_6 ; кн. Add
– создать ограничение проверки значения поля gr (диапазон от 1 до 99):
ф. Table – Constraints | уст. Check; ввести код gr >='01' AND gr <= '99'; Name ← Gr_from_01_to_99; кн. Add
– создать ограничение проверки уникальности значения поля no_zk:
ф. Table – Constraints | уст. Unique; Select Key Column(s) ← выбр. NO_ZK ;
переместить в колонку Key Column(s ); Name ← Unique_no_zk ; кн. Add
– создать уникальный индекс ФИО (Unique_fio ) из полей фамилия (fam ), имя (im ), отч (ot ):
ф. Table – Constraints | уст. Unique; Select Key Column(s) ← выбр. fam ;
переместить в колонку Key Column(s ); аналогично выбрать im и ot ;
Name ← Unique_fio ; кн. Add
кн. Finish; ф. Create Table; кн. Create
8. Аналогичным образом создать структуру таблицы Subjects (справочник предметов) с полями:
– создать последовательность predmIDs (счетчик)
– создать таблицу Subjects с полями:
– Идентификатор предмета predm_ID (числовое, обязательное)
– Название name (название предмета (текстовое, обязательное));
– Цикл cycle (цикл дисциплин, к которым относится предмет (текстовое, обязательное));
– Объем hrs (количество часов (числовое, обязательное));
– Кафедра dept (название кафедры, на которой ведется преподавание предмета (текстовое, необязательное)).
– создать первичный ключ из поля predm_ID со значениями из последовательности predmIDs;
– создать не менее трех ограничений на значения полей;
– создать хотя бы одно ограничение уникальности
9. Аналогичным образом создать структуру таблицы Успеваемость (успеваемость студентов по предметам) – Uspev :
– создать структуру таблицы Uspev с полями:
– Student (числовое, обязательное);
– Predmet (числовое, обязательное);
– Ocenka (оценка (символ));
– Data (дата (дата)).
– ввести составной первичный ключ (поля идентификаторов студента и предмета):
ф. Table – Primary Key; Primary Key ← уст. Not Populated;
Primary Key ← Student ; Composite Primary Key ← Predmet ; кн. Next;
– Связать таблицы, сделав таблицы студентов и предметов родительскими, а таблицу успеваемости – дочерней; установить каскадное правилj ссылочной целостности для удаления:
ф. Table – Foreign Keys; Name ← USPEV_STUDENT_fk ; уст. Cascade Delete;
Select Key Column(s) ← выбр. Student ; переместить в столбец Key Column(s);
References Table ← выбр. Students ; нажать на символ ↓;
Select Reference Column(s); выбр. stud_ID ;
переместить в столбец References Column(s); кн. ADD
аналогичным образом установить связь между таблицами USPEV и SUBJECTS ; кн. Next.
– создать по одному ограничению на значение и уникальность полей
10. Наполнить базу данных сведениями о студентах (не менее 5), предметах (не менее 3) и оценках (не менее 10). Освоить доступ к дочерним записям из родительской таблицы. Проверить работоспособность полей и таблиц подстановок. Освоить приемы изменения и удаления полей и записей. Проверить работоспособность ограничений значений полей, уникальности и др., предусмотренные при задании структуры базы данных. Проверить работоспособность ссылочной целостности, удаляя, изменяя и вставляя данные:
ф. Oracle – Object Explorer; раскр. список ← выбр. Tables; выбр. табл. Students ►
ф. Students; кн. Data; кн. Insert Row ► ф. Students – Create Row; внести данные;
кн. Create and Create Another (если есть еще записи для внесения)
или кн. Create (если это последняя строка);
аналогичным образом заполнить остальные таблицы