СУБД/лекция 1 семестр 2
Материал из Wiki
< СУБД
Версия от 13:17, 20 апреля 2014; Vidokq (обсуждение | вклад)
Это снимок страницы. Он включает старые, но не удалённые версии шаблонов и изображений.
Содержание |
Слайды
Ссылки на литературу
- СОЗДАНИЕ ТАБЛИЦ
- SQL - Урок 3. Создание таблиц и наполнение их информацией
- SQL - Урок 9. Редактирование, обновление и удаление данных
Создание таблиц
Создание и удаление таблиц в ms sql server. Все данные в БД sql server хранятся в таблицах. Таблицы состоят из колонок, объединяющих значения одного типа, и строк - записей в таблице. В одной БД может быть до 2 миллиардов таблиц, в таблице - 1024 колонки, в одной строке (записи) - 8060 байтов.
sql server поддерживает следующие типы данных:
Тип данных Обозначение Размер, байт
Бинарные данные binary
varbinary[(n)] 1-8000
Символы char[(n)]
varchar[(n)] 1-8000 ( до 8000 символов)
Символы unicode nchar[(n)]
nvarchar[(n)] 1-8000 (до 4000 символов)
Дата и время datetime 8
smalldatetime 4
Точные числа decimal[(p[,s])] 5-17
numeric[(p[,s])] 5-17
Приблизительные числа float[(n)] 4-8
real 4
Глобальный идентификатор uniqueidentifier 16
Целые числа int 4
smallint 2
tinyint 1
Денежки money, smallmoney 8, 4
Специальные bit,
cursor,
sysname,
timestamp 1, 0-8
Текст и изображение text, image 0-2 Гб
Текст unicode ntext 0-2 Гб
- Таблицы можно создавать с помощью оператора create table языка transact-sql, а также с помощью enterprise manager.
Содание таблиц с помощью create table
Для создания таблиц применяется оператор create table. Вот как выглядит упрощенный синтаксис этого оператора:
create table table_name (column_name data_type [null | not null] [,...n])
Например:
CREATE TABLE member ( member_no INT NOT NULL, lastname CHAR(50) NOT NULL, firstname CHAR(50) NOT NULL, photo image NULL )
Этим оператором создается таблица member, состоящая из четырех колонок:
- member_no - имеет тип int, значения null не допускаются
- lastname - имеет тип char(50) - 50 символов, значения null не допускаются
- firstname - аналогично lastname
- photo - имеет тип image (изображение), допускается значение null
null - специальное обозначение того, что элемент данных не имеет значения. В описании типа колонки указывается, что элементы данных могут быть неинициализированы. При указании not null - "пустые" значения не допускаются. Если при вставке записи пропустить значение для такой колонки, вставка не произойдет, и sql server сгенерирует ошибку.
- Попробуйте выполнить эту команду. Запустите query analyzer. Соединитесь с Вашим сервером. Из списка БД выберите sqlstep. Скопируйте в окно команд команду создания таблицы и выполните ее. (Если не забыли, надо нажать f5 или ctrl-e).
- Чтобы точно удостовериться, в том, что таблица была создана, наберите команду:
sp_help member
- Выделите ее (как в обычном редакторе) и снова нажмите f5. В окно результатов будет выведена информация о таблице member.
- sp_help - системная процедура, которая возвращает информацию об объектах БД (таблицах, хранимых процедурах и пр.).
Формат вызова таков: sp_help <имя таблицы> или для MySql show tables;
- Удалить таблицу проще простого. Там же, в запросчике (так у нас называют query analyzer), наберите:
drop table member
Удаление столбцов
Удаление столбца можно сделать при помощи следующей конструкции:
ALTER TABLE TABLE_NAME DROP field_name
- table_name - имя таблицы, в которой будет удален столбец;
- field_name - имя удаляемого столбца.
$sql="ALTER TABLE search DROP id_num"; mysql_query($sql);
Если мы хотим удалить сразу несколько полей, то надо через запятую повторить DROP field_name для каждого столбца:
ALTER TABLE SEARCH DROP id_1, DROP id_2, DROP id_3
$sql="ALTER TABLE search DROP id_1, DROP id_2, DROP id_3"; mysql_query($sql);