Главная страница
qrcode

Руководство по SQLServer. Руководство по ms sql server


НазваниеРуководство по ms sql server
Дата25.10.2019
Размер2.86 Mb.
Формат файлаpdf
Имя файлаРуководство по SQLServer.pdf
оригинальный pdf просмотр
ТипРуководство
#38234
страница1 из 10
Каталог
  1   2   3   4   5   6   7   8   9   10
Руководство по MS SQL Server
Глава 1.
Глава 2.
Глава 3.
Глава 4.
Глава 5.
Глава 6.
Глава 7.
Глава 8.
Глава 9
Глава 10.
Глава 11.
Глава 12.
MS SQL Server и T-SQL | Введение
Введение в MS SQL Server и T-SQL
Что такое SQL Server и T-SQL
SQL Server является одной из наиболее популярных систем управления базами данных (СУБД) в мире. Данная СУБД подходит для самых различных проектов: от небольших приложений до больших высоконагруженных проектов.
SQL Server был создан компанией Microsoft. Первая версия вышла в 1987 году. А текущей версией является версия 16, которая вышла в 2016 году и которая будет использоваться в текущем руководстве.
SQL Server долгое время был исключительно системой управления базами данных для Windows,
однако начиная с версии 16 эта система доступна и на Linux.
SQL Server характеризуется такими особенностями как:
Производительность. SQL Server работает очень быстро.
Надежность и безопасность. SQL Server предоставляет шифрование данных.
Простота. С данной СУБД относительно легко работать и вести администрирование.
Центральным аспектом в MS SQL Server, как и в любой СУБД, является база данных. База данных представляет хранилище данных, организованных определенным способом. Нередко физически база данных представляет файл на жестком диске, хотя такое соответствие необязательно. Для хранения и администрирования баз данных применяются системы управления базами данных (database management system) или СУБД (DBMS). И как раз MS SQL Server является одной из такой СУБД.
Для организации баз данных MS SQL Server использует реляционную модель. Эта модель баз данных была разработана еще в 1970 году Эдгаром Коддом. А на сегодняшний день она фактически является стандартом для организации баз данных.
Реляционная модель предполагает хранение данных в виде таблиц, каждая из которых состоит из строк и столбцов. Каждая строка хранит отдельный объект, а в столбцах размещаются атрибуты этого объекта.
Для идентификации каждой строки в рамках таблицы применяется первичный ключ (primary key). В
качестве первичного ключа может выступать один или несколько столбцов. Используя первичный ключ, мы можем ссылаться на определенную строку в таблице. Соответственно две строки не могут иметь один и тот же первичный ключ.
Через ключи одна таблица может быть связана с другой, то есть между двумя таблицами могут быть организованы связи. А сама таблица может быть представлена в виде отношения ("relation").
Для взаимодействия с базой данных применяется язык SQL (Structured Query Language). Клиент
(например, внешняя программа) отправляет запрос на языке SQL посредством специального API.
СУБД должным образом интерпретирует и выполняет запрос, а затем посылает клиенту результат выполнения.
MS SQL Server и T-SQL | Введение
Изначально язык SQL был разработан в компании IBM для системы баз данных, которая называлась
System/R. При этом сам язык назывался SEQUEL (Structured English Query Language). Хотя в итоге ни база данных, ни сам язык не были впоследствии официально опубликованы, по традиции сам термин SQL нередко произносят как "сиквел".
В 1979 году компания Relational Software Inc. разработала первую систему управления баз данных,
которая называлась Oracle и которая использовала язык SQL. В связи с успехом данного продукта компания была переименована в Oracle.
Впоследствии стали появляться другие системы баз данных, которые использовали SQL. В итоге в
1989 году Американский Национальный Институт Стандартов (ANSI) кодифицировал язык и опубликовал его первый стандарт. После этого стандарт периодически обновлялся и дополнялся.
Последнее его обновление состоялось в 2011 году. Но несмотря на наличие стандарта нередко производители СУБД используют свои собственные реализации языка SQL, которые немного отличаются друг от друга.
Выделяются две разновидности языка SQL: PL-SQL и T-SQL. PL-SQL используется в таких СУБД как
Oracle и MySQL. T-SQL (Transact-SQL) применяется в SQL Server. Собственно поэтому в рамках текущего руководства будет рассматриваться именно T-SQL.
В зависимости от задачи, которую выполняет команда T-SQL, он может принадлежать к одному из следующих типов:
DDL (Data Definition Language / Язык определения данных). К этому типу относятся различные команды, которые создают базу данных, таблицы, индексы, хранимые процедуры и т.д. В
общем определяют данные.
В частности, к этому типу мы можем отнести следующие команды:
CREATE: создает объекты базы данных (саму базу даных, таблицы, индексы и т.д.)
ALTER: изменяет объекты базы данных
DROP: удаляет объекты базы данных
TRUNCATE: удаляет все данные из таблиц
DML (Data Manipulation Language / Язык манипуляции данными). К этому типу относят команды на выбору данных, их обновление, добавление, удаление - в общем все те команды, с помощью которыми мы можем управлять данными.
К этому типу относятся следующие команды:
SELECT: извлекает данные из БД
UPDATE: обновляет данные
INSERT: добавляет новые данные
DELETE: удаляет данные
DCL (Data Control Language / Язык управления доступа к данным). К этому типу относят команды, которые управляют правами по доступу к данным. В частности, это следующие команды:
GRANT: предоставляет права для доступа к данным
REVOKE: отзывает права на доступ к данным
MS SQL Server и T-SQL | Установка
Установка MS SQL Server 2017
MS SQL Server доступен в различных вариациях. Прежде всего, это MS SQL Server Enterprise полный выпуск, нацеленный на использование в реальных проектах. Именно он используется на различных хостингах и серверах баз данных. Однако он доступен только в платной версии (не считая триального периода) и стоит довольно приличных денег.
Для простых приложений также может хватить и выпуска Express: он бесплатный. К тому же у него есть преимущество - его можно ставить в качестве реального сервера и использовать в реальных задачах, однако он имеет урезанный функционал по сравнению с полной версией.
И также есть MS SQL Server Developer Edition. Это полнофункциональный выпуск, который содержит весь функционал, что и полная версия MS SQL Server Enterprise, только нацелена только для нужд разработки. В то же время эта версия не может быть использована для развертывания в качестве реального сервера на реальных проектах. Однако для изучения всей механики MS SQL
Server эта версия представляет оптимальный вариант, поэтому именно эту версию мы и будем использовать.
Итак, установим MS SQL Server 2017 Developer Edition. Для этого перейдем по адресу
. При доступе может потребоваться учетная запись Microsoft. В этом случае надо осуществить вход с помощью учетной записи Microsoft.
Оставим языком по умолчанию английский и загрузим все файл iso. Так как загружаемый файл имеет расширение .iso, то после загрузки распакуем его и запустим программу установщика. Нам отобразится окно мастера установки:
MS SQL Server и T-SQL | Установка
Здесь выберем первый пункт "New SQL Server stand-alone installation or add features to an existing installation". Далее с помощью последовательности шагов нам надо будет установить опции установки.
Прощелкаем до пункта "Product Key". На этом этапе надо ввести ключ, либо указать один из бесплатных выпусков. Здесь мы указываем выпуск "Developer" и переходим к новому шагу по кнопке Next.
Далее надо будет принять лицензионное соглашение. И затем прощелкаем до шага "Feature
Selection". На этом этапе предлагается выбрать компоненты для установки. Здесь отметим все компоненты, учитывая при этом объем свободной памяти:
MS SQL Server и T-SQL | Установка
В зависимости от выбранных компонентов увеличивается количество этапов установки, где надо выполнить какие-либо настройки. В моем случае выбраны все компоненты. Поэтому в дальнейшем рассмотрим тот случай, если выбраны все компоненты.
Далее на шаге "Instance Configuration" нам надо будет указать название и ID запускаемой сущности
SQL Server.
MS SQL Server и T-SQL | Установка
Для имени указываем опцию Default instance, а для ID устанавливаем MSSQLSERVER. Это будет то имя экземпляра, по которому мы сможем обращаться к серверу из внешних приложений.
Затем прощелкаем последующие два шага с опциями по умолчанию до "Database Engine
Configuration". С помощью кнопки Add Current Userздесь добавим текущего пользователя в качестве администратора для сервера.
На следующем шаге "Analysis Services Configuration" также добавим текущего пользователя в качестве администратора для функции Analysis Services:
MS SQL Server и T-SQL | Установка
На следующих двух шагах оставим настройки по умолчанию. И далее на шаге "Distributed Replay
Controller" аналогично добавим текущего пользователя
На всех последующих шагах оставим настройки по умолчанию и на самом последнем экране для установки нажмем на кнопку Install:
MS SQL Server и T-SQL | Установка
Спустя некоторое время MS SQL Server будет установлен.
Итак, мы установили SQL Server 2017, при этому назначили для него идентификатор "MSSQLSERVER". Следует отметить, что перед подключением к нему, надо убедиться, что он запущен. Для этого можно открыть окно служб:
Если он не запущен, там же в панели служб мы его может запустить, и после этого мы сможем с ним работать.
MS SQL Server и T-SQL | Установка SQL Server Management Studio
Установка SQL Server Management Studio
Для удобного управления базами данных и различными опциями и настройками в MS SQL Server установим специальное средство администрирования, которое называется SQL Server
Management Studio (SSMS). Данную программу можно использовать для создания баз данных и их таблиц, написания и выполнения запросов к бд, а также для много другого.
локалей. Загрузим версию для английского языка (либо при желании можно выбрать локализованную версию на любом другом языке):
Несмотря на то, что эта версия SSMS имеет номер 17, она подходит и к MS SQL Server 2016 и даже к более ранним версиям сервера.
После загрузки запустим программу установки SSMS:
MS SQL Server и T-SQL | Установка SQL Server Management Studio
Для установки нажмем на кнопку Install.
После установки найдем SQL Server Management Studio в меню Пуск среди установленных программ в подпункте Microsoft SQL Server Tools 2017:
MS SQL Server и T-SQL | Установка SQL Server Management Studio
Итак, запустим программу. Вначале нам будет предложено подключиться к нужному серверу.
В поле "Server name" выберем в выпадающем списке "Browse for more...". И нам откроется окно, где необходимо будет выбрать нужный сервер:
MS SQL Server и T-SQL | Установка SQL Server Management Studio
В моем случае на локальном компьютере установлено два сервера выпуск Express и выпуск
Developer. Но по имени я могу понять, что первый элемент представляет Express, и соответственно мне надо выбрать второй элемент. Если на локальном компьютере установлен только один выпуск,
то соответственно выбирать не придется.
После выбора сервера его название отобразится в поле "Server name". И далее для подключения к нему необходимо будет нажать на кнопку Connect:
И после успешного подключения программа откроет содержимое сервера - все его базы данных и другие компоненты:
MS SQL Server и T-SQL | Начало работы
Начало работы с MS SQL Server
Создание базы данных
Базу данных часто отождествляют с набором таблиц, которые хранят данные. Но это не совсем так. Лучше сказать, что база данных представляет хранилище объектов. Основные из них:
Таблицы: хранят собственно данные
Представления (Views): выражения языка SQL, которые возвращают набор данных в виде таблицы
Хранимые процедуры: выполняют код на языке SQL по отношению к данным к БД
(например, получает данные или изменяет их)
Функции: также код SQL, который выполняет определенную задачу
В SQL Server используется два типа баз данных: системные и пользовательские. Системные базы данных необходимы серверу SQL для корректной работы. А пользовательские базы данных создаются пользователями сервера и могут хранить любую произвольную информацию. Их можно изменять и удалять, создавать заново. Собственно это те базы данных, которые мы будем создавать и с которыми мы будем работать.
Системные базы данных
В MS SQL Server по умолчанию создается четыре системных баз данных:
master: эта главная база данных сервера, в случае ее отсутствия или повреждения сервер не сможет работать. Она хранит все используемые логины пользователей сервера, их роли,
различные конфигурационные настройки, имена и информацию о базах данных, которые хранятся на сервере, а также ряд другой информации.
model: эта база данных представляет шаблон, на основе которого создаются другие базы данных. То есть когда мы создаем через SSMS свою бд, она создается как копия базы model.
msdb: хранит информацию о работе, выполняемой таким компонентом как планировщик SQL.
Также она хранит информацию о бекапах баз данных.
tempdb: эта база данных используется как хранилище для временных объектов. Она заново пересоздается при каждом запуске сервера.
Все эти базы можно увидеть через SQL Server Management Studio в узле Databases -> System
Databases:
MS SQL Server и T-SQL | Начало работы
Эти базы данных не следует изменять, за исключением бд model.
Если на этапе установки сервера был выбран и установлен компонент PolyBase, то также на сервере по умолчанию будут расположены еще три базы данных, которые используется этим компонентом: DWConfiguration, DWDiagnostics, DWQueue.
Создание базы данных в SQL Management Studio
Теперь создадим свою базу данных. Для этого мы можем использовать скрипт на языке SQL, либо все сделать с помощью графических средств в SQL Management Studio. В данном случае мы выберем второй способ. Для этого откроем SQL Server Management Studio и нажмем правой кнопкой мыши на узел Databases. Затем в появившемся контекстном меню выберем пункт New
Database:
MS SQL Server и T-SQL | Начало работы
После этого нам открывается окно для создания базы данных:
В поле Database необходимо ввести название новой бд. Пусть у нас база данных называется university.
MS SQL Server и T-SQL | Начало работы
Следующее поле Owner задает владельца базы данных. По умолчанию оно имеет значение , то есть владельцем будет тот, кто создает эту базу данных. Оставим это поле без изменений.
Далее идет таблица для установки общих настроек базы данных. Она содержит две строки первая для установки настроек для главного файла, где будут храниться данные, и вторая строка для конфигурации файла логгирования. В частности, мы можем установить следующие настройки:
Logical Name: логическое имя, которое присваивается файлу базы данных.
File Type: есть несколько типов файлов, но, как правило, основная работа ведется с файлами данных (ROWS Data) и файлом лога (LOG)
Filegroup: обозначет группу файлов. Группа файлов может хранить множество файлов и может использоваться для разбиения базы данных на части для размещения в разных местах.
Initial Size (MB): устанавливает начальный размер файлов при создании (фактический размер может отличаться от этого значения).
Autogrowth/Maxsize: при достижении базой данных начального размера SQL Server использует это значение для увеличения файла.
Path: каталог, где будут храниться базы данных.
File Name: непосредственное имя физического файла. Если оно не указано, то применяется логическое имя.
После ввода названия базы данных нажмем на кнопку ОК, и бд будет создана.
После этого она появится среди баз данных сервера. Если эта бд впоследствии не потребуется, то ее можно удалить, нажав на нее правой кнопкой мыши и выбрав в контекстном меню пункт Delete:
MS SQL Server и T-SQL | Создание таблиц
Создание таблиц
Ключевым объектом в базе данных являются таблицы. Таблицы состоят из строк и столбцов.
Столбцы определяют тип информации, которая хранится, а строки содержат значения для этих столбцов.
В прошлой теме была создана база данных university. Теперь определим в ней первую таблицу.
Опять же для создания таблицы в SQL Server Management Studio можно применить скрипт на языке
SQL, либо воспользоваться графическим дизайнером. В данном случае выберем второе.
Для этого раскроем узел базы данных university в SQL Server Management Studio, нажмем на его подузел Tables правой кнопкой мыши и далее в контексто меню выберем New -> Table...:
После этого нам откроется дизайнер таблицы. В центральной части в таблице необходимо ввести данные о столбцах таблицы. Дизайнер содержит три поля:
Column Name: имя столбца
Data Type: тип данных столбца. Тип данных определяет, какие данные могут храниться в этом столбце. Например, если столбец представляет числовой тип, то он может хранить
MS SQL Server и T-SQL | Создание таблиц только числа.
Allow Nulls: может ли отсутствовать значение у столбца, то есть может ли он быть пустым
Допустим, нам надо создать таблицу с данными учащихся в учебном заведении. Для этого в дизайнере таблицы четыре столбца: Id, FirstName, LastName и Year, которые будут представлять соответственно уникальный идентификатор пользователя, его имя, фамилию и год рождения. У
первого и четвертого столбца надо указать тип int (то есть целочисленный), а у столбцов
FirstName и LastName - тип nvarchar(50) (строковый).
Затем в окне Properties, которая содержит свойства таблицы, в поле Name надо ввести имя таблицы - Students, а в поле Identity ввести Id, то есть тем самым указывая, что столбец Id будет идентификатором.
Имя таблицы должно быть уникальным в рамках базы данных. Как правило, название таблицы отражает название сущности, которая в ней хранится. Например, мы хотим сохранить студентов,
поэтому таблица называется Students (слово студент во множественном числе на английском языке). Существуют разные мнения по поводу того, стоит использовать название сущности в единственном или множественном числе (Student или Students). В данном случае вопрос наименования таблицы всецело ложится на разработчика базы данных.
И в конце нам надо отметить, что столбец Id будет выполнять роль первичного ключа (primary key). Первичный ключ уникально идентифицирует каждую строку. В роли первичного ключа может выступать один столбец, а может и несколько.
Для установки первичного ключа нажмем на столбец Id правой кнопкой мыши и в появившемся меню выберем пункт Set Primary Key.
MS SQL Server и T-SQL | Создание таблиц
После этого напротив поля Id должен появиться золотой ключик. Этот ключик будет указывать, что столбец Id будет выполнять роль первичного ключа.
И после сохранения в базе данных university появится таблица Students:
Мы можем заметить, что название таблицы на самом деле начинается с префикса dbo. Этот префикс представляет схему. Схема определяет контейнер, который хранит объекты. То есть схема логически разграничивает базы данных. Если схема явным образом не указывается при создании объекта, то объект принадлежит схеме по умолчанию - схеме dbo.
Нажмем правой кнопкой мыши на название таблицы, и нам отобразится контекстное меню с опциями:
MS SQL Server и T-SQL | Создание таблиц
С помощью этих опций можно управлять таблицей. Так, опция Delete позволяет удалить таблицу.
Опция Design откроет окно дизайнера таблицы, где мы можем при необходимости внести изменения в ее структуру.
Для добавления начальных данных можно выбрать опцию Edit Top 200 Rows. Она открывает в виде таблицы 200 первых строк и позволяет их изменить. Но так как у нас таблица только создана, то естественно в ней будет никаких данных. Введем пару строк - пару студентов, указав необходимые данные для столбцов:
MS SQL Server и T-SQL | Создание таблиц
В данном случае я добавил две строки.
Затем опять же по клику на таблицу правой кнопкой мыши мы можем выбрать в контекстном меню пункт Select To 1000 Rows, и будет запущен скрипт, который отобразит первые 1000 строк из таблицы:
MS SQL Server и T-SQL | Первый запрос на SQL
Первый запрос на T-SQL
В прошлой теме в SQL Management Studio была создана простенькая база данных с одной таблицей.
Теперь определим и выполним первый SQL-запрос. Для этого откроем SQL Management Studio,
нажмем правой кнопкой мыши на элемент самого верхнего уровня в Object Explorer (название сервера) и в появившемся контекстном меню выберем пункт New Query:
После этого в центральной части программы откроется окно для ввода команд языка SQL.
Выполним запрос к таблице, которая была создана в прошлой теме, в частности, получим все данные из нее. База данных у нас называется university, а таблица - dbo.Students, поэтому для получения данных из таблицы введем следующий запрос:
SELECT * FROM university.dbo.Students
Оператор SELECT позволяет выбирать данные. FROM указывает источник, откуда брать данные.
Фактически этим запросом мы говорим "ВЫБРАТЬ все ИЗ таблицы university.dbo.Students". Стоит отметить, что для названия таблицы используется полный ее путь с указанием базы данных и схемы.
MS SQL Server и T-SQL | Первый запрос на SQL
После ввода запроса нажмем на панели инструментов на кнопку Execute, либо можно нажать на клавишу F5.
В результате выполнения запроса в нижней части программы появится небольшая таблица, которая отобразит результаты запроса - то есть все данные из таблицы Students.
Если необходимо совершить несколько запросов к одной и той же базе данных, то мы можем использовать команду USE, чтобы зафиксировать базу данных. В этом случае при запросах к таблицам достаточно указать их имя без имени бд и схемы:
USE university
SELECT * FROM Students
В данном случае мы выполняем запрос в целом для сервера, мы можем обратиться к любой базе данных на сервере. Но также мы можем выполнять запросы только в рамках конкретной базы данных. Для этого необходимо нажать правой кнопкой мыши на нужную бд и в контекстном меню выбрать пункт New Query:
MS SQL Server и T-SQL | Первый запрос на SQL
Если в этом случае мы захотим выполнить запрос к выше использованной таблице Students, то нам не пришлось бы указывать в запросе название базы данных и схему, так как эти значения итак уже были бы понятны:
SELECT * FROM Students
MS SQL Server и T-SQL | Создание и удаление базы данных
Основы T-SQL
Создание и удаление базы данных
Создание базы данных
Для создания базы данных используется команда CREATE DATABASE.
Чтобы создать новую базу данных откроем SQL Server Management Studio. Нажмем на назначение сервера в окне Object Explorer и в появившемся меню выберем пункт New Query.
В центральное поле для ввода выражений sql введем следующий код:
CREATE DATABASE usersdb
Тем самым мы создаем базу данных, которая будет называться "usersdb":
Для выполнения команды нажмем на панели инструментов на кнопку Execute или на клавишу F5. И
на сервере появится новая база данных.
После создания базы даных, мы можем установить ее в качестве текущей с помощью команды USE:
USE usersdb;
MS SQL Server и T-SQL | Создание и удаление базы данных
Прикрепление базы данных
Возможна ситуация, что у нас уже есть файл базы данных, который, к примеру, создан на другом компьютере. Файл базы данных представляет файл с расширением mdf, и этот файл в принципе мы можем переносить. Однако даже если мы скопируем его компьютер с установленным MS SQL
Server, просто так скопированная база данных на сервере не появится. Для этого необходимо выполнить прикрепление базы данных к серверу. В этом случае применяется выражение:
CREATE DATABASE название_базы_данных
ON PRIMARY(FILENAME='путь_к_файлу_mdf_на_локальном_компьютере')
FOR ATTACH;
В качестве каталога для базы данных лучше использовать каталог, где хранятся остальные базы данных сервера. На Windows 10 по умолчанию это каталог C:\Program Files\Microsoft SQL
Server\MSSQL13.MSSQLSERVER\MSSQL\DATA. Например, пусть в моем случае файл с данными называется userstoredb.mdf. И я хочу этот файл добавить на сервер как базу данных. Вначале его надо скопировать в выше указанный каталог. Затем для прикрепления базы к серверу надо использовать следующую команду:
CREATE DATABASE contactsdb
ON PRIMARY(FILENAME='C:\Program Files\Microsoft SQL
Server\MSSQL13.MSSQLSERVER\MSSQL\DATA\userstoredb.mdf')
FOR ATTACH;
После выполнения команды на сервере появится база данных contactsdb.
Удаление базы данных
Для удаления базы данных применяется команда DROP DATABASE, которая имеет следующий синтаксис:
DROP DATABASE database_name1 [, database_name2]...
После команды через запятую мы можем перечислить все удаляемые базы данных. Например,
удаление базы данных contactsdb:
DROP DATABASE contactsdb
Стоит учитывать, что даже если удаляемая база данных была прикреплена, то все равно будут удалены все файлы базы данных.
MS SQL Server и T-SQL | Создание и удаление таблиц
Создание и удаление таблиц
Для создания таблиц применяется команда CREATE TABLE. С этой командой можно использовать ряд операторов, которые определяют столбцы таблицы и их атрибуты. И кроме того, можно использовать ряд операторов, которые определяют свойства таблицы в целом. Одна база данных может содержать до 2 миллиардов таблиц.
Общий синтаксис создания таблицы выглядит следующим образом:
CREATE TABLE название_таблицы
(название_столбца1 тип_данных атрибуты_столбца1, название_столбца2 тип_данных атрибуты_столбца2, название_столбцаN тип_данных атрибуты_столбцаN, атрибуты_таблицы
)
После команды CREATE TABLE идет название создаваемой таблицы. Имя таблицы выполняет роль ее идентификатора в базе данных, поэтому оно должно быть уникальным. Имя должно иметь длину не больше 128 символов. Имя может состоять из алфавитно-цифровых символов, а также символов $
и знака подчеркивания. Причем первым символом должна быть буква или знак подчеркивания.
Имя объекта не может включать пробелы и не может представлять одно из ключевых слов языка
Transact-SQL. Если идентификатор все же содержит пробельные символы, то его следует заключать в кавычки. Если необходимо в качестве имени использовать ключевые слова, то эти слова помещаются в квадратные скобки.
Примеры корректных идентификаторов:
Users tags$345 users_accounts
"users accounts"
[Table]
После имени таблицы в скобках указываются параметры всех столбцов и в самом конце атрибуты,
которые относятся ко всей таблице. Атрибуты столбцов и атрибуты таблицы являются необязательными компонентами, и их можно не указывать.
В самом просто виде команда CREATE TABLE должна содержать как минимум имя таблицы, имена и типы столбцов.
Таблица может содержать от 1 до 1024 столбцов. Каждый столбец должен иметь уникальное в рамках текущей таблицы имя, и ему должен быть назначен тип данных.
Например, определение простейшей таблицы Customers:
CREATE TABLE
Customers (
Id INT,
MS SQL Server и T-SQL | Создание и удаление таблиц
Age INT,
FirstName NVARCHAR(20),
LastName NVARCHAR(20),
Email VARCHAR(30),
Phone VARCHAR(20)
)
В данном случае в таблице Customers определяются шесть столбцов: Id, FirstName, LastName, Age,
Email, Phone. Первые два столбца представляют идентификатор клиента и его возраст и имеют тип INT, то есть будут хранить числовые значения. Следующие два столбца представляют имя и фамилию клиента и имеют тип NVARCHAR(20), то есть представляют строку UNICODE длиной не более 20 символов. Последние два столбца Email и Phone представляют адрес электронной почты и телефон клиента и имеют тип VARCHAR(30/20) - они также хранят строку, но не в кодировке
UNICODE.
Создание таблицы в SQL Management Studio
Создадим простую таблицу на сервере. Для этого откроем SQL Server Management Studio и нажмем правой кнопкой мыши на название сервера. В появившемся контекстном меню выберем пункт New
Query.
Таблица создается в рамках текущей базы данных. Если мы запускаем окно редактора SQL как это сделано выше - из под названия сервера, то база данных по умолчанию не установлена. И для ее установки необходимо применить команду USE, после которой указывается имя базы данных.
Поэтому введем в поле редактора SQL-команд следующие выражения:
USE usersdb;
CREATE TABLE Customers
(
Id INT,
Age INT,
FirstName NVARCHAR(20),
LastName NVARCHAR(20),
Email VARCHAR(30),
Phone VARCHAR(20)
);
То есть в базу данных добавляется таблица Customers, которая была рассмотрена ранее.
MS SQL Server и T-SQL | Создание и удаление таблиц
Также можно открыть редактор из под базы данных, также нажав на нее правой кнопкой мыши и выбрав New Query:
В этом случае в качестве текущей будет рассматриваться та база данных, из под которой был открыт редактор, и дополнительно ее устанавливать с помощью команды USE не потребуется.
Удаление таблиц
Для удаления таблиц используется команда DROP TABLE, которая имеет следующий синтаксис:
DROP TABLE table1 [, table2, ...]
Например, удаление таблицы Customers:
DROP TABLE Customers
Переименование таблицы
Для переименования таблиц применяется системная хранимая процедура "sp_rename". Например,
переименование таблицы Users в UserAccounts в базе данных usersdb:
USE usersdb;
EXEC sp_rename 'Users', 'UserAccounts';
MS SQL Server и T-SQL | Типы данных SQL
Типы данных T-SQL
При создании таблицы для всех ее столбцов необходимо указать определенный тип данных. Тип данных определяет, какие значения могут храниться в столбце, сколько они будут занимать места в памяти.
Язык T-SQL предоставляет множество различных типов. В зависимости от характера значений все их можно разделить на группы.
Числовые типы данных
BIT: хранит значение 0 или 1. Фактически является аналогом булевого типа в языках программирования. Занимает 1 байт.
TINYINT: хранит числа от 0 до 255. Занимает 1 байт. Хорошо подходит для хранения небольших чисел.
SMALLINT: хранит числа от –32 768 до 32 767. Занимает 2 байта
INT: хранит числа от –2 147 483 648 до 2 147 483 647. Занимает 4 байта. Наиболее используемый тип для хранения чисел.
BIGINT: хранит очень большие числа от -9 223 372 036 854 775 808 до 9 223 372 036 854 775 807, которые занимают в памяти 8 байт.
DECIMAL: хранит числа c фиксированной точностью. Занимает от 5 до 17 байт в зависимости от количества чисел после запятой.
Данный тип может принимать два параметра precision и scale: DECIMAL(precision, scale).
Параметр precision представляет максимальное количество цифр, которые может хранить число. Это значение должно находиться в диапазоне от 1 до 38. По умолчанию оно равно 18.
Параметр scale представляет максимальное количество цифр, которые может содержать число после запятой. Это значение должно находиться в диапазоне от 0 до значения параметра precision. По умолчанию оно равно 0.
NUMERIC: данный тип аналогичен типу DECIMAL.
SMALLMONEY: хранит дробные значения от -214 748.3648 до 214 748.3647. Предназначено для хранения денежных величин. Занимает 4 байта. Эквивалентен типу DECIMAL(10,4).
MONEY: хранит дробные значения от -922 337 203 685 477.5808 до 922 337 203 685 477.5807.
Представляет денежные величины и занимает 8 байт. Эквивалентен типу DECIMAL(19,4).
FLOAT: хранит числа от –1.79E+308 до 1.79E+308. Занимает от 4 до 8 байт в зависимости от дробной части.
Может иметь форму опредеения в виде FLOAT(n), где n представляет число бит, которые используются для хранения десятичной части числа (мантиссы). По умолчанию n = 53.
  1   2   3   4   5   6   7   8   9   10

перейти в каталог файлов


связь с админом