Установка sql server в server coreinstall sql server on server core
Содержание:
- БезопасностьSecurity
- Классы модели объектов SMOSMO Classes
- Установка с Azure Data StudioInstallation with Azure Data Studio
- Вернёмся к SQL
- Программы командной строкиCommand-line tools
- Основные сведения о базах данныхBasic Information about Databases
- Примеры: Azure Synapse AnalyticsAzure Synapse Analytics и Параллельное хранилище данныхParallel Data WarehouseExamples: Azure Synapse AnalyticsAzure Synapse Analytics and Параллельное хранилище данныхParallel Data Warehouse
- Значение результатаResult Value
- Подключение к экземпляру SQL ServerConnect to a SQL Server instance
- Установка SQL сервера 2008
- Термины и понятия, связанные с расширенными событиямиTerms and concepts in extended events
- Примеры:Examples:
- В.C. Совместное использование DISTINCT и SELECTUsing DISTINCT with SELECT
- Г.D. Использование GROUP BYUsing GROUP BY
- Д.E. Использование GROUP BY с несколькими группамиUsing GROUP BY with multiple groups
- Е.F. Использование GROUP BY и WHEREUsing GROUP BY and WHERE
- Ж.G. Использование GROUP BY с выражениемUsing GROUP BY with an expression
- З.H. Использование GROUP BY с ORDER BYUsing GROUP BY with ORDER BY
- И.I. Использование предложения HAVINGUsing the HAVING clause
БезопасностьSecurity
Права доступа учетной записиAccount Privileges
SQL ServerSQL Server Браузер прослушивает UDP-порт и принимает запросы без проверки подлинности с использованием протокола разрешения SQL ServerSQL Server (SSRP).Browser listens on a UDP port and accepts unauthenticated requests by using SQL ServerSQL Server Resolution Protocol (SSRP). SQL ServerSQL Server должен запускаться в контексте безопасности непривилегированного пользователя, чтобы минимизировать ущерб при возможном проникновении злоумышленника.Browser should be run in the security context of a low privileged user to minimize exposure to a malicious attack. Учетную запись входа можно изменить при помощи диспетчера конфигурации SQL ServerSQL Server .The logon account can be changed by using the SQL ServerSQL Server Configuration Manager. Права, которые необходимо назначить браузеру SQL ServerSQL Server .The minimum user rights for SQL ServerSQL Server Browser are the following:
-
Запретить сетевой доступ к этому компьютеру.Deny access to this computer from the network
-
Запретить локальный вход в систему.Deny logon locally
-
Запретить вход в систему в качестве пакетного задания.Deny Log on as a batch job
-
Запретить вход в систему через службы терминалов.Deny Log On Through Terminal Services
-
Вход в систему в качестве службы.Log on as a service
-
Разрешить чтение и запись разделов реестра SQL ServerSQL Server , связанных с сетью (порты и каналы).Read and write the SQL ServerSQL Server registry keys related to network communication (ports and pipes)
Учетная запись по умолчаниюDefault Account
Программа установки настраивает браузер SQL ServerSQL Server для использования учетной записи, выбранной для служб при установке.Setup configures SQL ServerSQL Server Browser to use the account selected for services during setup. Можно указать другую учетную запись:Other possible accounts include the following:
-
Любая учетная запись домен\локальная .Any domain\local account
-
Учетная запись локальной службыThe local service account
-
Учетная запись локальной системы (не рекомендуется за избыточностью прав доступа).The local system account (not recommended as has unnecessary privileges)
Скрытие экземпляра SQL ServerHiding SQL Server
Скрытые экземпляры SQL ServerSQL Server — это экземпляры, которые поддерживают только соединения через общую память.Hidden instances are instances of SQL ServerSQL Server that support only shared memory connections. В SQL ServerSQL Serverустановите флаг , чтобы браузер SQL ServerSQL Server не выдавал сведения об этом экземпляре сервера.For SQL ServerSQL Server, set the flag to indicate that SQL ServerSQL Server Browser should not respond with information about this server instance.
Применение брандмауэраUsing a Firewall
Для связи со службой браузера SQL ServerSQL Server на сервере, защищенном брандмауэром, в дополнение к TCP-порту SQL ServerSQL Server (например 1433) откройте UDP-порт 1434.To communicate with the SQL ServerSQL Server Browser service on a server behind a firewall, open UDP port 1434, in addition to the TCP port used by SQL ServerSQL Server (e.g., 1433). Сведения о работе с брандмауэром см. в разделе «Практическое руководство. Настройка брандмауэра для доступа SQL ServerSQL Server» в документации по SQL ServerSQL Server.For information about working with a firewall, see «How to: Configure a Firewall for SQL ServerSQL Server Access» in SQL ServerSQL Server Books Online.
Классы модели объектов SMOSMO Classes
Классы модели объектов SMO подразделяются на две категории: классы экземпляров и служебные классы.SMO classes include two categories: instance classes and utility classes.
Классы экземпляровInstance Classes
Классы экземпляров представляют объекты SQL ServerSQL Server , такие как серверы, базы данных, таблицы, триггеры и хранимые процедуры.The instance classes represent SQL ServerSQL Server objects such as servers, databases, tables, triggers, and stored procedures. Класс ServerConnection используется для установления соединения с экземпляром SQL ServerSQL Server и для управления режимом сбора направляемых ему команд.The ServerConnection class is used to establish a connection to the instance of SQL ServerSQL Server and control the capture mode of commands sent to it.
Объекты экземпляра модели SMO образуют иерархию, которая представляет иерархию сервера баз данных.The SMO instance objects form a hierarchy that represents the hierarchy of a database server. Вверху размещаются экземпляры SQL ServerSQL Server, под ними располагаются базы данных, а далее — таблицы, столбцы, триггеры и т. д.At the top are the instances of SQL ServerSQL Server, under which are the databases, and following on with tables, columns, triggers and so on. Если логика допускает возможность существования связи «один родитель ко многим потомкам», например в таблице с одним или несколькими столбцами, тогда потомок представляется коллекцией объектов.If it is logical that there is a one parent to many children relationship, such as a table having one or more columns, then the child is represented by a collection of objects. В других случаях потомок представляется одним объектом.Otherwise the child is just represented by an object.
Служебные классыUtility Classes
Служебные классы — это группа объектов, созданных явным образом для выполнения конкретных задач.Utilities classes are a group of objects that have been created explicitly to perform specific tasks. В соответствии со своими функциями они разделяются на различные иерархии объектов.They have been divided into different object hierarchies based on function:
-
Класс Transfer.Transfer class. Используется для передачи другой базе данных схемы и данных.This is used to transfer schema and data to another database.
-
Классы Backup и Restore.Backup and Restore classes. Используются для создания резервной копии и восстановления баз данных.These are used to back up and restore databases.
-
Класс Scripter.Scripter Class. Используется для формирования файлов скриптов, предназначенных для повторного создания объектов и их зависимостей.This is used to create script files for the regeneration of objects and their dependencies.
Установка с Azure Data StudioInstallation with Azure Data Studio
- Начиная с SSMS 18.7, вместе с SSMS устанавливается системная версия Azure Data Studio по умолчанию.Starting with SSMS 18.7, SSMS installs a system version of Azure Data Studio by default. Если на рабочей станции уже установлена аналогичная или более поздняя системная версия Azure Data Studio (стабильная или для предварительной оценки), то при сравнении с включенной в состав SSMS версией Azure Data Studio установка Azure Data Studio в рамках SSMS пропускается.If an equal or greater system version of Azure Data Studio stable or insiders is already present on the workstation compared to the included version of Azure Data Studio, the installation of Azure Data Studio by SSMS is skipped. Сведения о версии Azure Data Studio можно найти в заметках о выпуске.The Azure Data Studio version can be found in the release notes.
- Установщику системной версии Azure Data Studio требуются те же права безопасности, что и установщику SSMS.The Azure Data Studio system installer requires the same security rights as the SSMS installer.
- Установка Azure Data Studio выполняется с параметрами установки Azure Data Studio по умолчанию.The Azure Data Studio installation is completed with the default Azure Data Studio installation options. Это необходимо для создания папки меню «Пуск» и добавления Azure Data Studio в путь к ней.These are to create a Start Menu folder and add Azure Data Studio to PATH. Ярлык на рабочем столе не создается. Azure Data Studio не регистрируется как редактор по умолчанию для каких-либо типов файлов.A desktop shortcut is not created and Azure Data Studio is not registered as a default editor for any file types.
- Локализация Azure Data Studio осуществляется с помощью расширений языкового пакета.Localization of Azure Data Studio is accomplished through Language Pack extensions. Чтобы локализовать Azure Data Studio, скачайте соответствующий языковой пакет из marketplace-магазина расширений.To localize Azure Data Studio, download the corresponding language pack from the extension marketplace.
- Сейчас установку Azure Data Studio можно пропустить, запустив установщик SSMS с флагом командной строки .At this time, the installation of Azure Data Studio can be skipped by launching the SSMS installer with the command line flag .
Вернёмся к SQL
Если читателю показалось, что мы ушли в сторону от SQL, так оно и есть. Но очень трудно понять, что такое SQL, не зная, с чем он работает.
Выходит, что SQL — это язык программирования, необходимый для написания команд к БД, после выполнения которых она вернёт результат. Результат будет зависеть от команды, написанной на SQL. Как в любом другом языке программирования, в SQL есть операторы для работы с данными, из которых складываются команды. Операторы распределены по четырём языкам:
- DDL — Data Definition Language;
- DML — Data Manipulation Language;
- DCL — Data Control Language;
- TCL — Transaction Control Language.
Программы командной строкиCommand-line tools
Ниже приведены основные средства командной строки.The tools below are the main command-line tools.
ИнструментTool | DescriptionDescription | Операционная системаOperating system |
---|---|---|
bcpbcp | Служебная программа b ulk c opy p rogram (bcp) используется для массового копирования данных между экземпляром MicrosoftMicrosoft SQL ServerSQL Server и файлом данных в указанном пользователем формате.The b ulk c opy p rogram utility (bcp) bulk copies data between an instance of MicrosoftMicrosoft SQL ServerSQL Server and a data file in a user-specified format. | WindowsmacOSLinuxWindowsmacOSLinux |
mssql-cli (предварительная версия)mssql-cli (preview) | mssql-cli представляет собой интерактивное средство создания запросов к SQL Server из командной строки.mssql-cli is an interactive command-line tool for querying SQL Server. Кроме того, SQL Server можно запрашивать с помощью программы командной строки, в которой реализована технология IntelliSense, выделение синтаксиса и многое другое.Also, query SQL Server with a command-line tool that features IntelliSense, syntax high-lighting, and more. | WindowsmacOSLinuxWindowsmacOSLinux |
mssql-confmssql-conf | Средство mssql-conf настраивает SQL Server в Linux.mssql-conf configures SQL Server running on Linux. | LinuxLinux |
mssql-scripter (предварительная версия)mssql-scripter (preview) | mssql-scripter — это многоплатформенный интерфейс командной строки для написания сценариев баз данных SQL Server.mssql-scripter is a multi-platform command-line experience for scripting SQL Server databases. | WindowsmacOSLinuxWindowsmacOSLinux |
sqlcmdsqlcmd | Служебная программа sqlcmd позволяет из командной строки выполнять инструкции Transact-SQL, системные процедуры и файлы скриптов.sqlcmd utility lets you enter Transact-SQL statements, system procedures, and script files at the command prompt. | WindowsmacOSLinuxWindowsmacOSLinux |
sqlpackagesqlpackage | Программа командной строки sqlpackage автоматизирует некоторые задачи разработки баз данных.sqlpackage is a command-line utility that automates several database development tasks. | WindowsmacOSLinuxWindowsmacOSLinux |
SQL Server PowerShellSQL Server PowerShell | SQL Server PowerShell предоставляет командлеты для работы с SQL.SQL Server PowerShell provides cmdlets for working with SQL. | WindowsmacOSLinuxWindowsmacOSLinux |
Основные сведения о базах данныхBasic Information about Databases
На компьютере можно установить один или несколько экземпляров SQL ServerSQL Server .A computer can have one or more than one instance of SQL ServerSQL Server installed. Каждый экземпляр SQL ServerSQL Server может содержать одну или несколько баз данных.Each instance of SQL ServerSQL Server can contain one or many databases. В базе данных может содержаться одна или несколько групп объектов владения, которые называются схемами.Within a database, there are one or many object ownership groups called schemas. В каждой схеме присутствуют объекты базы данных, такие как таблицы, представления и хранимые процедуры.Within each schema there are database objects such as tables, views, and stored procedures. Некоторые объекты, например сертификаты и асимметричные ключи, могут содержаться в базе данных, но при этом не находиться внутри схемы.Some objects such as certificates and asymmetric keys are contained within the database, but are not contained within a schema. Дополнительные сведения о создании таблиц см. в разделе Tables.For more information about creating tables, see Tables.
Базы данных SQL ServerSQL Server хранятся в файловой системе в виде файлов.SQL ServerSQL Server databases are stored in the file system in files. Файлы могут быть объединены в группы файлов.Files can be grouped into filegroups. Дополнительные сведения о файлах и файловых группах см. в разделе Database Files and Filegroups.For more information about files and filegroups, see Database Files and Filegroups.
При получении доступа к экземпляру SQL ServerSQL Server пользователи идентифицируются согласно имени входа.When people gain access to an instance of SQL ServerSQL Server they are identified as a login. При получении доступа к базе данных пользователи идентифицируются как пользователи базы данных.When people gain access to a database they are identified as a database user. Имя пользователя базы данных может быть основано на имени входа.A database user can be based on a login. Если автономные базы данных включены, то пользователь базы данных может быть создан не на основе имени входа.If contained databases are enabled, a database user can be created that is not based on a login. Дополнительные сведения о пользователях см. в статье CREATE USER (Transact-SQL).For more information about users, see CREATE USER (Transact-SQL).
Пользователь, имеющий доступ к базе данных, может получить разрешения на доступ к объектам этой базы данных.A user that has access to a database can be given permission to access the objects in the database. Хотя разрешения и могут быть предоставлены отдельным пользователям, рекомендуется создавать роли базы данных, добавляя при этом пользователей базы данных к соответствующим ролям, а затем предоставлять разрешения ролям.Though permissions can be granted to individual users, we recommend creating database roles, adding the database users to the roles, and then grant access permission to the roles. Предоставление разрешений ролям, а не пользователям позволяет легко и понятно управлять процессом распределения разрешений, несмотря на постоянное изменение и рост числа пользователей.Granting permissions to roles instead of users makes it easier to keep permissions consistent and understandable as the number of users grow and continually change. Дополнительные сведения о ролях и разрешениях см. в разделах CREATE ROLE (Transact-SQL) и Субъекты (ядро СУБД).For more information about roles permissions, see CREATE ROLE (Transact-SQL) and Principals (Database Engine).
Примеры: Azure Synapse AnalyticsAzure Synapse Analytics и Параллельное хранилище данныхParallel Data WarehouseExamples: Azure Synapse AnalyticsAzure Synapse Analytics and Параллельное хранилище данныхParallel Data Warehouse
Д.E. Использование функции COUNT и параметра DISTINCTUsing COUNT and DISTINCT
В этом примере функция возвращает количество различных должностей, которые может иметь конкретный сотрудник компании.This example returns the number of different titles that an employee of a specific company can hold.
Результирующий набор:Here is the result set.
Е.F. Использование функции COUNT(*)Using COUNT(*)
В этом примере функция возвращает общее количество строк в таблице .This example returns the total number of rows in the table.
Результирующий набор:Here is the result set.
В этом примере функция работает с другими статистическими функциями в списке .This example combines with other aggregate functions in the list. Запрос возвращает количество торговых представителей с годовой квотой продаж более 500 000 долл. США и их среднюю квоту продаж.It returns the number of sales representatives with an annual sales quota greater than $500,000, and the average sales quota of those sales representatives.
Результирующий набор:Here is the result set.
З.H. Использование функции COUNT с предложением HAVINGUsing COUNT with HAVING
В этом примере функция используется с предложением , чтобы получить список подразделений компании, в каждом из которых работает более 15 сотрудников.This example uses with the clause to return the departments of a company, each of which has more than 15 employees.
Результирующий набор:Here is the result set.
И.I. Использование функции COUNT с предложением OVERUsing COUNT with OVER
В этом примере функция используется с предложением , чтобы получить количество продуктов, содержащихся в каждом из указанных заказов на продажу.This example uses with the clause, to return the number of products contained in each of the specified sales orders.
Результирующий набор:Here is the result set.
Значение результатаResult Value
Если значение аргумента test_expression равно одному из значений, возвращенных вложенным запросом subquery или одному из значений, содержащихся в списке expression (где значения разделяются запятыми), результирующее значение равно TRUE. В противном случае оно равно FALSE.If the value of test_expression is equal to any value returned by subquery or is equal to any expression from the comma-separated list, the result value is TRUE; otherwise, the result value is FALSE.
Предложение NOT IN инвертирует значение subquery или expression.Using NOT IN negates the subquery value or expression.
Внимание!
Для любых значений NULL, возвращаемых в subquery или expression, которые сравниваются со значением test_expression с помощью предложения IN или NOT IN, возвращается результат UNKNOWN.Any null values returned by subquery or expression that are compared to test_expression using IN or NOT IN return UNKNOWN. Использование значений NULL с предложениями IN или NOT IN может привести к непредвиденным результатам.Using null values in together with IN or NOT IN can produce unexpected results.
Подключение к экземпляру SQL ServerConnect to a SQL Server instance
-
Запустите среду SQL Server Management Studio.Start SQL Server Management Studio. При первом запуске SSMS откроется окно Подключение к серверу.The first time you run SSMS, the Connect to Server window opens. Если этого не происходит, вы можете открыть его вручную, последовательно выбрав Обозреватель объектов > Подключить > Ядро СУБД.If it doesn’t open, you can open it manually by selecting Object Explorer > Connect > Database Engine.
-
Откроется диалоговое окно Соединение с сервером .The Connect to Server dialog box appears. Введите следующие сведения:Enter the following information:
ПараметрSetting Рекомендуемые значенияSuggested Value(s) ОписаниеDescription Тип сервераServer type Ядро СУБДDatabase engine В поле Тип сервера выберите Ядро СУБД (обычно это параметр по умолчанию).For Server type, select Database Engine (usually the default option). Имя сервераServer name Полное имя сервераThe fully qualified server name В поле Имя сервера введите имя SQL Server (при локальном подключении в качестве имени сервера также можно использовать localhost).For Server name, enter the name of your SQL Server (you can also use localhost as the server name if you’re connecting locally). Если вы НЕ ИСПОЛЬЗУЕТЕ экземпляр по умолчанию — MSSQLSERVER — необходимо ввести имя сервера и имя экземпляра.If you’re NOT using the default instance — MSSQLSERVER — you must enter in the server name and the instance name. Если вы не знаете, как определить имя экземпляра SQL Server, см. раздел .If you’re unsure how to determine your SQL Server instance name, see . АутентификацияAuthentication Проверка подлинности WindowsWindows Authentication Проверка подлинности SQL ServerSQL Server Authentication По умолчанию используется проверка подлинности Windows.Windows Authentication is set as default. Также для подключения можно использовать режим Проверка подлинности SQL Server.You can also use SQL Server Authentication to connect. Если выбран режим Проверка подлинности SQL Server, необходимо ввести имя пользователя и пароль.However, if you select SQL Server Authentication, a username and password are required. Дополнительные сведения о типах проверки подлинности см. в разделе Подключение к серверу (ядро СУБД).For more information about authentication types, see Connect to the server (database engine). Имя входаLogin Идентификатор пользователя учетной записи сервераServer account user ID Идентификатор пользователя учетной записи сервера, используемой для входа на сервер.The user ID from the server account used to log in to the server. Имя для входа, используемое для проверки подлинности SQL Server.A login is required when using SQL Server Authentication. ПарольPassword Пароль учетной записи сервераServer account password Пароль учетной записи сервера, используемой для входа на сервер.The password from the server account used to log in the server. Пароль, используемый для проверки подлинности SQL Server.A password is required when using SQL Server Authentication. -
После заполнения всех полей выберите Подключить.After you’ve completed all the fields, select Connect.
Вы также можете изменить дополнительные параметры подключения, выбрав Параметры.You can also modify additional connection options by selecting Options. Примеры параметров подключения: база данных, к которой вы подключаетесь, время ожидания подключения и сетевой протокол.Examples of connection options are the database you’re connecting to, the connection timeout value, and the network protocol. В этой статье во всех полях указываются значения по умолчанию.This article uses the default values for all the fields.
-
Чтобы убедиться в успешном подключении к экземпляру SQL Server, разверните и изучите объекты в обозревателе объектов, для которых отображаются имя сервера, версия SQL Server и имя пользователя.To verify that your SQL Server connection succeeded, expand and explore the objects within Object Explorer where the server name, the SQL Server version, and the username are displayed. Эти объекты могут различаться в зависимости от типа сервера.These objects are different depending on the server type.
Установка SQL сервера 2008
Установка SQL сервера 2008 имеет свои особенности, поэтому мы не будем останавливаться только на отличиях от установки сервера 2005, а пройдем с Вами весь путь.
Запустите программу-установщик с правами администратора.
В разделе «Планирование» нажмите пункт «Средство проверки конфигурации» (на рисунке обычно изображен молоточек и гаечный ключ).
Теперь нажмите кнопку «Показать подробности» и убедитесь, все ли проверки пройдены успешно. Если были обнаружены какие-либо проблемы, необходимо их устранить и запустить проверку, нажав «Включить заново». Нажмите ОК.
Далее заходим в раздел «Установка». Выбираем пункт «Новая установка изолированного SQL Server или добавление компонентов к существующему экземпляру».
Снова нажмите кнопку «Показать подробности» и убедитесь, все ли проверки пройдены успешно. Если были обнаружены какие-либо проблемы, необходимо их устранить и запустить проверку, нажав «Включить заново». Нажмите ОК.
Введите приобретенный ключ продукта (если версия бесплатная, ключ не требуется) и нажмите Далее.
Прочитайте условия лицензии и поставьте галочку, что вы с ними согласны. Нажмите Далее.
Для установки файлов поддержки программы установки нажмите Установить.
Нажмите кнопку «Показать подробности» и убедитесь, все ли проверки пройдены успешно. Если были обнаружены какие-либо проблемы, необходимо их устранить и запустить проверку, нажав «Включить заново». Нажмите ОК.
На данном этапе выберите компоненты для установки (можно использовать кнопку «Выделить все») и нажмите Далее
Обратите внимание, что для нормальной работы ПО следует установить Полнотекстовый поиск и для управления самим SQL сервером необходимо выбрать Средства управления — основные.
Выберите опцию «Экземпляр по умолчанию» или «Именованный экземпляр». Во втором случае задайте имя экземпляра. Нажмите Далее.
Проверьте данные по месту на диске для компонентов SQL сервера и нажмите Далее.
Выберите опции, как показано ниже, и перейдите на закладку «Параметры сортировки».
Определяем режим сортировки данных для сервера. В обоих случаях следует установить «Cyrillic_General». Нажмите Далее. Чтобы изменить опцию, нажмите расположенную рядом кнопку «Настройка» и установите необходимые параметры (порядок сортировки следует установить как «Cyrillic_General» и поставить галочку на пункте «С учетом диакритических символов»).
Теперь выберите опцию «Смешанный режим» и задайте пароль для учетной записи администратора «sa». Можно указать и дополнительные учетные записи пользователей Windows. Далее перейдите на закладку «Каталоги данных».
Введите путь к папке, в которой будут размещены файлы баз данных, в поле «Корневой каталог данных». Нажмите кнопку Далее.
Теперь задаем режим настройки служб Reporting Services. Выберите Установить конфигурацию по умолчанию для работы в собственном режиме и нажмите Далее.
Если Вы хотите помочь корпорации Майкрософт улучшить некоторые компоненты и службы SQL Server 2008, можете отметить галочками интересующие Вас пункты. Понятное дело — это не является обязательным. Нажмите Далее.
Нажмите кнопку «Показать подробности» и убедитесь, все ли проверки пройдены успешно. Если были обнаружены какие-либо проблемы, необходимо их устранить и запустить проверку, нажав «Включить заново». Нажмите ОК.
Нажмите кнопку Установить.
По завершению установки нажмите Далее.
После появления окна с надписью «Установка SQL Server 2008 успешно завершена» нажмите Закрыть.
Ура! Получилось!
А теперь лучше компьютер перезагрузить.
Термины и понятия, связанные с расширенными событиямиTerms and concepts in extended events
В приведенной ниже таблице перечислены термины, используемые в связи с расширенными событиями, и объясняется их смысл.The following table lists the terms used for extended events, and describes their meanings.
ТерминTerm | ОписаниеDescription |
---|---|
сеанс событийevent session | Целью является конструкция, основанная на одном или нескольких событиях, а также вспомогательные элементы, такие как действия.A construct centered around one or more events, plus supporting items like actions are targets. Инструкция CREATE EVENT SESSION создает каждый сеанс событий.The CREATE EVENT SESSION statement constructs each event session. С помощью инструкции ALTER можно по желанию запускать и останавливать сеансы.You can ALTER an event session to start and stop it at will. Сеанс событий часто называется просто сеансом, если из контекста понятно, что имеется в виду именно сеанс событий.An event session is sometimes referred to as just a session, when the context clarifies it means event session. Более подробные сведения о сеансах событий см. в статье Сеансы расширенных событий SQL Server.Further details about event sessions are described in: SQL Server Extended Events Sessions. |
eventevent | Определенное событие в системе, наступление которого отслеживается активным сеансом событий.A specific occurrence in the system that is watched for by an active event session. Например, событие sql_statement_completed представляет момент завершения какой-либо инструкции T-SQL.For example, the sql_statement_completed event represents the moment that any given T-SQL statement completes. Событие может сообщать различные данные, например длительность.The event can report its duration and other data. |
targettarget | Элемент, который получает выходные данные из регистрируемого события.A item that receives the output data from a captured event. Служит для вывода данных.The target displays the data to you. Примерами могут служить event_file и его облегченная версия ring_buffer, хранимая в памяти.Examples include the event_file, and its handy light-weight cousin the memory ring_buffer. Более сложная целевая гистограмма выполняет ряд задач по обработке данных перед их выводом.The fancier histogram target performs some processing of your data before displaying it. Любой целевой объект можно использовать для любого сеанса событий.Any target can be used for any event session. Дополнительные сведения см. в разделе Целевые объекты для расширенных событий в SQL Server.For details, see Targets for Extended Events in SQL Server. |
actionaction | Поле, известное событию.A field known to the event. Данные из этого поля отправляются в целевой объект.Data from the field is sent to the target. Поле действия тесно связано с фильтром предиката.The action field is closely related to the predicate filter. |
фильтром предикатаpredicate filter | Проверка данных в поле события, благодаря которой только нужное подмножество экземпляров события отправляется целевому объекту.A test of data in an event field, used so that only an interesting subset of event occurrences are sent to the target. Например, фильтр может включать только те экземпляры события sql_statement_completed , в которых инструкция T-SQL содержит строку HAVING.For example, a filter could include only those sql_statement_completed event occurrences where the T-SQL statement contained the string HAVING. |
Пакетpackage | Квалификатор имени, добавляемый к каждому элементу в наборе элементов, связанном с пакетом событий.A name qualifier attached to each item in a set of items that centers around a core of events. Например, пакет событий может включать события, связанные с текстом T-SQL.For example, a package might have events about T-SQL text. Одно из событий может быть связано с кодом T-SQL в пакете, отделенном командой GO.One event could be about all the T-SQL in a GO-delimited batch. А другое более частное событие может быть связано с отдельными инструкциями T-SQL.Meanwhile another narrower event is about individual T-SQL statements. Кроме того, для каждой инструкции T-SQL есть события начала и завершения.Further, for any one T-SQL statement, there is are start and completed events. Соответствующие событиям поля также содержатся в пакете с событиями.Fields appropriate for the events are also in the package with the events. Большинство целевых объектов находятся в пакете package0 и используются с событиями из многих других пакетов.Most targets are in package0 and are used with events from many other packages. |
Примеры:Examples:
В следующих примерах используется база данных AdventureWorksPDW2012AdventureWorksPDW2012.The following examples use the AdventureWorksPDW2012AdventureWorksPDW2012 database.
В этом разделе приведены три примера кода.This section shows three code examples. В ходе выполнения первого примера кода возвращаются все строки (предложение WHERE не указано), а также все столбцы (используется ) таблицы .This first code example returns all rows (no WHERE clause is specified) and all columns (using the ) from the table.
В этом примере для достижения такого же результата используется присвоение псевдонима таблице.This next example using table aliasing to achieve the same result.
В ходе выполнения данного примера кода возвращаются все строки (предложение WHERE не задано) и подмножества столбцов (, , ) таблицы базы данных .This example returns all rows (no WHERE clause is specified) and a subset of the columns (, , ) from the table in the database. Заголовок третьего столбца переименовывается в .The third column heading is renamed to .
Этот пример возвращает только строки для , имеющие , не равное NULL, и , равное «M» (состоит в браке).This example returns only the rows for that have an that is not NULL and a of ‘M’ (married).
В.C. Совместное использование DISTINCT и SELECTUsing DISTINCT with SELECT
В следующем примере используется для создания списка всех уникальных должностей в таблице .The following example uses to generate a list of all unique titles in the table.
Г.D. Использование GROUP BYUsing GROUP BY
В следующем примере вычисляется общий объем всех продаж за каждый день.The following example finds the total amount for all sales on each day.
Так как в запросе используется предложение , то выводится только одна строка, содержащая общий объем продаж по каждому дню.Because of the clause, only one row containing the sum of all sales is returned for each day.
Д.E. Использование GROUP BY с несколькими группамиUsing GROUP BY with multiple groups
В следующем примере вычисляются значения средней цены и суммы продаж через Интернет за каждый день, сгруппированные по дате заказа и ключу продвижения.The following example finds the average price and the sum of Internet sales for each day, grouped by order date and the promotion key.
Е.F. Использование GROUP BY и WHEREUsing GROUP BY and WHERE
В следующем примере после извлечения строк, содержащих даты заказов позднее 1 августа 2002 г., происходит их разделение на группы.The following example puts the results into groups after retrieving only the rows with order dates later than August 1, 2002.
Ж.G. Использование GROUP BY с выражениемUsing GROUP BY with an expression
В следующем примере производится группировка с помощью выражения.The following example groups by an expression. Группировку можно производить только с помощью выражения, не содержащего агрегатных функций.You can group by an expression if the expression does not include aggregate functions.
З.H. Использование GROUP BY с ORDER BYUsing GROUP BY with ORDER BY
В следующем примере вычисляется сумма продаж за день и выполняется поиск заказов по определенному дню.The following example finds the sum of sales per day, and orders by the day.
И.I. Использование предложения HAVINGUsing the HAVING clause
Для ограничения результатов поиска в этом запросе используется предложение .This query uses the clause to restrict results.