Понятие технологии «Клиент-сервер». Общие сведения о языке запросов SQL.




 

Любая СУБД позволяет выполнять запросы. Результатом выполнения запросов тоже является таблица. При этом пользователь не должен сам программировать просмотр всей базы данных, анализировать каждую запись и отбирать нужную информацию. Всё это делает ядро СУБД по сформированному пользователем запросу. Наличие языка запросов позволяет эффективно реализовывать сетевые системы по технологии «Клиент-сервер».

При работе сетевых приложений база данных может располагаться на файл-сервере или файл-серверах. Функции файл-сервера заключаются, в основном, в хранении базы данных и обеспечении доступа к ней пользователя. При этом вся обработка осуществляется на компьютере пользователя.

 

 
 

 

 


 

 

При небольших объёмах данных эта схема работает вполне удовлетворительно. Однако, при увеличении числа пользователей в сети и ростом базы данных, начинают возникать проблемы, связанные с падением производительности. Это связано с увеличением объёмов данных, передаваемых по сети, т.к. обработка производится на компьютере пользователя.

Технология «Клиент-сервер» разделяет приложение на 2 части: клиентская часть (в основном обеспечивает интерфейс и находится на компьютере пользователя) и серверная часть (управляет данными, администрирует базу данных и находится на специальном выделенном компьютере (сервере)). Клиентское приложение формирует запрос к серверу, где он эффективно обрабатывается, и результаты выполнения передаются пользователю. Схема технологии «Клиент-сервер» имеет следующий вид:

 

Пользователь N  
Пользователь 2  
Пользователь 1
Сервер
данные

 
 


запрос

данные запрос данные

запрос

…..

 

 

Такая технология позволяет резко сократить объём данных, передаваемых по сети. Практическая реализация технологии «Клиент-сервер» возможна только при стандартизации языка запросов, для того чтобы приложения, разрабатываемые на различных языках программирования или в различных организациях могли функционировать совместно. Таким мировым стандартом на сегодняшний день является структурированный язык запросов SQL. SQL является стандартом при работе с реляционными базами данных. Первый международный стандарт языка SQL был принят в 1989 году и являлся стандартом SQL 1 или ANSI/ISO. В конце 1992 года был принят стандарт SQL 2. Он не лишён недостатков, но является более полным и точным, чем SQL 1. В 1999 был разработан новый стандарт SQL 3. Его основным отличием от SQL 1 и SQL 2 является то, что в него введены новые типы данных. При этом предполагается возможность создания более сложных структурированных типов данных, которые в большей степени соответствуют объектной ориентации. Также новый стандарт стандартизирует события и триггеры, которые мы дальше рассматривать не будем.

Различают 2 вида языка SQL: интерактивный и встроенный. Эти 2 формы работают одинаково, но используются по-разному.

Интерактивный SQL применяется для выполнения действий непосредственно в базе данных, чтобы получить результат. При применении этой формы вводится команда, выполняется и немедленно получается результат.

Встроенный SQL состоит из команд языка SQL, включённых в программы, Написанные на других языках программирования (С++, Pascal и т.д.).

Любые запросы в Microsoft Access хранятся в виде SQL-запросов. Это позволяет использовать Microsoft Access в любой другой совместной и использующей SQL СУБД.

 

С помощью языка SQL можно выполнить следующие виды запросов СУБД:

 

  1. Запросы выборки данных, в том числе, с сортировкой, подсчётом итоговых значений и т.д.
  2. Запросы обновления базы данных (добавление, изменение, удаление строк таблицы).
  3. Запросы создания таблицы.
  4. Запросы управления базой данных (определение прав доступа к данным, переименование таблиц, определение синонимов для имён таблицы и т.д.).

 

 

Структура SQL.

 

В отличие от реляционной алгебры, в которой представлены только операции запросов базы данных, SQL является полным языком. В нём присутствуют не только операции запросов, но и операторы, соответствующие языку описания данных.

 

SQL содержит несколько разделов:

 

Операторы определения данных DDL:

 

Операторы Смысл Действие
CREATE TABLE Создать таблицу Создаёт новую таблицу БД
DROP TABLE Удалить таблицу Удаляет таблицу БД
ALTER TABLE Изменить таблицу Изменяет структуру существующей таблицы
CREATE VIEW Создать представление Создаёт виртуальную таблицу
DROP VIEW Удалить представление Удаляет созданное представление
CREATE INDEX Создать индекс Создаёт индекс для некоторой таблицы
DROP INDEX Удалить индекс Удаляет ранее созданный индекс

 

Операторы манипулирования данных:

 

Операторы Смысл Действие
DELETE Удалить строки Удаляет одну или несколько строк
INSERT Вставить строку Вставляет одну строку в базовую таблицу
UPDATE Обновить строку Обновляет значение одной или нескольких строк

 

Язык запросов DQL (состоит из одного оператора):

 

Операторы Смысл Действие
SELECT Выбрать строки Оператор заменяет все операции реляционной алгебры

 

Средства управления транзакциями:

 

Операторы Смысл Действие
COMMIT Завершить транзакцию Завершает комплексную обработку данных, включённых в общую транзакцию
ROLLBACK Откатить транзакцию Отменяет изменения в ходе выполнения транзакции
SAVEPOINT Сохранить промежуточную точку выполнения транзакции Сохраняет промежуточное состояние базы данных

 

Средства администрирования данных:

 

Операторы Смысл Действие
ALTER DATABASE Изменить БД Изменяет набор основных объектов БД
ALTER DBAREA Изменить область хранения БД Изменяет ранее созданную область хранения БД
ALTER PASSWORD Изменить пароль Изменяет пароль для БД
CREATE DATABASE Создать БД Создаёт новую БД
CREATE DBAREA Создать область хранения БД Создаёт новую область хранения БД
DROP DATABASE Удалить БД Удаляет существующую БД
GRANTE Предоставить права Предоставляет права доступа к БД
REVOKE Лишить прав Лишает прав доступа к некоторым объектам

 

Программный SQL:

 

Операторы Смысл Действие
DECLARE Определяет кур/сор Задаёт имя курсора
OPEN Открыть курсор  
FETCH Считать строку из множества строк  
CLOSE Закрыть курсор  
PREPARE Подготовить оператор SQL к динамическому выполнению  
EXECUTE Выполнить оператор SQL  

 

 

SQL 1 поддерживает следующие типы данных:

 

  1. CHARACTER – CHAR – это символьные строки постоянной длинны. При задании данного типа под каждое значение отводится n символов и, если реальное значение < n символов, то СУБД автоматически дополняет недостающие символы пробелами.
  2. NUMERIC (n, m) – точные числа. Здесь n – общее число цифр в числе, m – количество цифр слева после запятой.
  3. DECIMAL (n, m) – точные числа, где n – общее число цифр в числе, m – количество цифр слева от десятичной точки.
  4. DEC (n, m) – практически идентичен двум предыдущим типам.
  5. INTEGER – INT – это целые числа.
  6. SMALLINT – целые числа меньшего диапазона.
  7. FLOAT [(n)] – числа большой точности, хранимые в форме с плавающей точкой.
  8. REAL – вещественный тип чисел, который соответствует числам с плавающей точкой с меньшей точностью.
  9. DOUBLE PRECISION – этот тип данных специфицирует тип данных с определённой в реализации точностью, большей, чем определённой в реализации типа REAL.

 

 

Тема 6.

1. Запрос выборки в языке SQL. Выборка из одной таблицы.

2. Суммирование данных с помощью функций агрегирования (групповых функций).

 

 



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2016-02-16 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: