русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

ALTER (MODIFY в Oracle) новое_определение_существующего_столбца


Дата добавления: 2015-07-09; просмотров: 675; Нарушение авторских прав


При этом можно изменить тип, размер, ограничение NULL/NOT NULL, значение по умолчанию. Конечно, нельзя изменить имя столбца. Для этого следует удалить столбец со старым именем и добавить новый столбец с нужным именем;

Следует отметить, что во многих случаях команда ALTER TABLE позволяет внести изменения в структуру таблицы, уже заполненной данными (если они удовлетворяют вводимым ограничениям). В некоторых случаях требуется, чтобы столбец был пустым, например, сервер Oracle при удалении столбца требует выполнения этого условия.

Например:

ALTER TABLE t

MODIFY c2 VARCHAR(200)

Увеличили предельный размер текста для столбца c2

Пример создания базы данных

Создадим демонстрационную базу данных из трех таблиц (Студенты, Предметы и Оценки), которая будет хранить сведения об успеваемости студентов. Структура данной БД, конечно, сильно упрощена по сравнению с тем, что требуется для решения реальной задачи учета успеваемости студентов. Однако как пример для обучения основам SQL такая структура вполне подойдет. Назначение каждого столбца на изображенной ниже схеме, очевидно, понятно (рис. 4.1).

 

Схема Базы Данных:

 

Рис. 4.1 – Схема демонстрационной базы данных

 

Приведем различные варианты команд DML для создания трех таблиц базы данных.

Создание таблицы students:

CREATE TABLE students

(

cod_st NUMBER(5) PRIMARY KEY,

name_st VARCHAR(100) NOT NULL,

born DATE NOT NULL,

phone CHAR (15)

)

Создание таблицы subjects:

CREATE TABLE subjects

(

cod_sub NUMBER (4),

name_sub VARCHAR(200) NOT NULL

)

Изменение таблицы subjects, добавление первичного ключа:

ALTER TABLE subjects

ADD PRIMARY KEY (cod_sub)

Изменение таблицы subjects, добавление ограничения уникальности названия предмета:

ALTER TABLE subjects

ADD UNIQUE (name_sub)



Создание таблицы marks:

CREATE TABLE marks

(

cod_st NUMBER(5) NOT NULL REFERENCES students

ON DELETE CASCADE,

cod_sub NUMBER(4) NOT NULL REFERENCES subjects ,

mark NUMBER(1) CHECK (mark BETWEEN 2 AND 5),

PRIMARY KEY(cod_st, cod_sub)

)



<== предыдущая лекция | следующая лекция ==>
Ограничения | Команды манипулирования данными


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 3.266 сек.