Функции, используемых в базах данных sqlwhat are the sql database functions?

Предварительные требованияPrerequisites

  • Базу данных сначала необходимо отсоединить.The database must first be detached. Попытка присоединить базу данных, которая не была отсоединена, приведет к возникновению ошибки.Attempting to attach a database that has not been detached will return an error. Дополнительные сведения см. в разделе Отсоединение базы данных.For more information, see Detach a Database.

  • При присоединении базы данных должны быть доступны все файлы данных (файлы MDF и LDF).When you attach a database, all data files (MDF and LDF files) must be available. Если у какого-либо файла данных путь отличается от того, каким он был при первом создании или последнем присоединении, необходимо указать текущий путь к файлу.If any data file has a different path from when the database was first created or last attached, you must specify the current path of the file.

  • Если при присоединении базы данных файлы MDF и LDF находятся в разных каталогах, а один из путей содержит \\?\GlobalRoot, операция завершается ошибкой.When you attach a database, if MDF and LDF files are located in different directories and one of the paths includes \\?\GlobalRoot, the operation will fail.

Для чего использовать присоединение?Is Attach the best choice?

В пределах одного экземпляра базы данных рекомендуется перемещать с помощью процедуры планового перемещения , а не с помощью операций отсоединения и присоединения.We recommend that you move databases by using the planned relocation procedure instead of using detach and attach, when moving database files within the same instance. Дополнительные сведения см. в статье Move User Databases.For more information, see Move User Databases.

Мы не рекомендуем использовать отсоединение и присоединение для резервного копирования и восстановления,We don’t recommend using detach and attach for Backup and Recovery. так как резервные копии журналов транзакций отсутствуют, а файлы могут быть случайно удалены.There are no transaction log backups, and it’s possible to accidentally delete files.

безопасностьSecurity

Разрешения на доступ к файлам устанавливаются во время выполнения определенных операций с базами данных, включая отсоединение и присоединение баз данных.File access permissions are set during a number of database operations, including detaching or attaching a database. Дополнительные сведения о разрешениях на доступ к файлам, настраиваемых при отсоединении и присоединении базы данных см. в разделе Защита данных и файлов журналов электронной документации по SQL Server 2008 R2SQL Server 2008 R2 (документация актуальна).For information about file permissions that are set whenever a database is detached and attached, see Securing Data and Log Files from SQL Server 2008 R2SQL Server 2008 R2 Books Online (Still a valid read!)

Не рекомендуется подключать или восстанавливать базы данных, полученные из неизвестных или ненадежных источников.We recommend that you do not attach or restore databases from unknown or untrusted sources. В этих базах данных может содержаться вредоносный код, вызывающий выполнение непредусмотренных инструкций Transact-SQLTransact-SQL или появление ошибок из-за изменения схемы или физической структуры базы данных.Such databases could contain malicious code that might execute unintended Transact-SQLTransact-SQL code or cause errors by modifying the schema or the physical database structure. Перед тем как использовать базу данных, полученную из неизвестного или ненадежного источника, выполните на тестовом сервере инструкцию DBCC CHECKDB для этой базы данных, а также изучите исходный код в базе данных, например хранимые процедуры и другой пользовательский код.Before you use a database from an unknown or untrusted source, run DBCC CHECKDB on the database on a nonproduction server and also examine the code, such as stored procedures or other user-defined code, in the database. Дополнительные сведения о присоединении баз данных и сведения об изменениях, вносимых при присоединении баз данных в метаданные, см. в статье Присоединение и отсоединение базы данных (SQL Server).For more information about attaching databases and information about changes that are made to metadata when you attach a database, see Database Detach and Attach (SQL Server).

АргументыArguments

scalar_expressionscalar_expressionВозвращаемое значение.Is the value to be returned. scalar_expression может быть столбцом, вложенным запросом или другим произвольным выражением, результатом вычисления которого является единичное значение.scalar_expression can be a column, subquery, or other arbitrary expression that results in a single value. Другие аналитические функции использовать нельзя.Other analytic functions are not permitted.

Область применения: SQL Azure для пограничных вычисленийApplies to: Azure SQL Edge

IGNORE NULLS — пропуск значений NULL в наборе данных при вычислении первого значения в секции.IGNORE NULLS — Ignore null values in the dataset when computing the first value over a partition.RESPECT NULLS — учет значений NULL в наборе данных при вычислении первого значения в секции.RESPECT NULLS — Respect null values in the dataset when computing first value over a partition.

Дополнительные сведения см. в разделе Ввод отсутствующих значений.For more information, see Imputing missing values.

OVER ( order_by_clause )OVER ( order_by_clause )partition_by_clause делит результирующий набор, полученный с помощью предложения FROM, на секции, к которым применяется функция.partition_by_clause divides the result set produced by the FROM clause into partitions to which the function is applied. Если этот параметр не указан, функция обрабатывает все строки результирующего набора запроса как отдельные группы.If not specified, the function treats all rows of the query result set as a single group. order_by_clause определяет логический порядок, в котором выполняется операция.order_by_clause determines the logical order in which the operation is performed. Аргумент order_by_clause является обязательным.order_by_clause is required. rows_range_clause еще больше ограничивает строки в пределах секции, задавая начальную и конечную точки.rows_range_clause further limits the rows within the partition by specifying start and end points. Дополнительные сведения см. в статье Предложение OVER (Transact-SQL).For more information, see OVER Clause (Transact-SQL).

АргументыArguments

new_table new_table Указывает имя новой таблицы, создаваемой на основе столбцов, указанных в списке выбора, и строк, выбираемых из источника данных.Specifies the name of a new table to be created, based on the columns in the select list and the rows chosen from the data source.

Формат аргумента new_table определяется путем расчета выражений, указанных в списке выбора.The format of new_table is determined by evaluating the expressions in the select list. Столбцы в таблице, указанной в аргументе new_table, создаются в порядке, соответствующем списку выбора.The columns in new_table are created in the order specified by the select list. Все столбцы таблицы, указанной в аргументе new_table, получают такие же имена, значения, типы данных и свойства допустимости значений NULL, которые указаны в соответствующем выражении в списке выбора.Each column in new_table has the same name, data type, nullability, and value as the corresponding expression in the select list. Свойство IDENTITY столбца переносится за исключением случаев, когда наступают условия, описанные в подразделе «Примечания» раздела «Работа со столбцами идентификаторов».The IDENTITY property of a column is transferred except under the conditions defined in «Working with Identity Columns» in the Remarks section.

Для того чтобы создать таблицу в другой базе данных в этом же экземпляре службы SQL ServerSQL Server, определите new_table в качестве полного имени в форме database.schema.table_name.To create the table in another database on the same instance of SQL ServerSQL Server, specify new_table as a fully qualified name in the form database.schema.table_name.

new_table нельзя создать на удаленном сервере, однако new_table можно заполнить из удаленного источника данных.You cannot create new_table on a remote server; however, you can populate new_table from a remote data source. Для создания таблицы new_table из удаленного источника таблицы определите источник таблицы, используя четырехчастное имя в форме linked_server.catalog.schema.object в предложении FROM инструкции SELECT.To create new_table from a remote source table, specify the source table using a four-part name in the form linked_server.catalog.schema.object in the FROM clause of the SELECT statement. Для указания удаленного источника данных также можно использовать функцию OPENQUERY или функцию OPENDATASOURCE в предложении FROM.Alternatively, you can use the OPENQUERY function or the OPENDATASOURCE function in the FROM clause to specify the remote data source.

filegroup filegroup Указывает имя файловой группы, в которой будет создана таблица.Specifies the name of the filegroup in which new table will be created. Указанная файловая группа должна существовать в базе данных, в противном случае обработчик SQL Server создает ошибку.The filegroup specified should exist on the database else the SQL Server engine throws an error.

Применимо к: SQL Server 2016 (13.x);SQL Server 2016 (13.x) с пакетом обновления 2 (SP2) и выше.Applies to: SQL Server 2016 (13.x);SQL Server 2016 (13.x) SP2 and later.

Как работает служба «Обозреватель SQL Server»How SQL Server Browser Works

Если SQL ServerSQL Server настроен на использование протокола TCP/IP, то при запуске экземпляра SQL ServerSQL Serverсерверу назначается порт TCP/IP.When an instance of SQL ServerSQL Server starts, if the TCP/IP protocol is enabled for SQL ServerSQL Server, the server is assigned a TCP/IP port. Если включен протокол именованных каналов, SQL ServerSQL Server прослушивает указанный именованный канал.If the named pipes protocol is enabled, SQL ServerSQL Server listens on a specific named pipe. Этот порт или «канал», используется конкретным экземпляром для обмена данными с клиентскими приложениями.This port, or «pipe,» is used by that specific instance to exchange data with client applications. Экземпляру по умолчанию при установке назначается TCP-порт 1433 и канал , но затем эти значения могут быть изменены администратором сервера при помощи диспетчера конфигурации SQL ServerSQL Server .During installation, TCP port 1433 and pipe are assigned to the default instance, but those can be changed later by the server administrator using SQL ServerSQL Server Configuration Manager. Поскольку порт или канал может использоваться только одним экземпляром SQL ServerSQL Server , именованным экземплярам, включая SQL Server ExpressSQL Server Express, назначаются другие номера портов и имена каналов.Because only one instance of SQL ServerSQL Server can use a port or pipe, different port numbers and pipe names are assigned for named instances, including SQL Server ExpressSQL Server Express. По умолчанию, если и именованные экземпляры и SQL Server ExpressSQL Server Express настроены для работы с динамическими портами, это означает, что доступный порт назначается при запуске SQL ServerSQL Server .By default, when enabled, both named instances and SQL Server ExpressSQL Server Express are configured to use dynamic ports, that is, an available port is assigned when SQL ServerSQL Server starts. При необходимости экземпляру SQL ServerSQL Serverможет быть назначен конкретный порт,If you want, a specific port can be assigned to an instance of SQL ServerSQL Server. и при соединении клиенты смогут указать именно его. Но если порт назначается динамически, то он может измениться в любой момент после перезапуска SQL ServerSQL Server , поэтому клиент может и не знать правильного номера порта.When connecting, clients can specify a specific port; but if the port is dynamically assigned, the port number can change anytime SQL ServerSQL Server is restarted, so the correct port number is unknown to the client.

После запуска SQL ServerSQL Server запускается браузер и пытается занять UDP-порт 1434.Upon startup, SQL ServerSQL Server Browser starts and claims UDP port 1434. SQL ServerSQL Server читает реестр, находит все экземпляры SQL ServerSQL Server на данном компьютере и помечает используемые ими порты и именованные каналы.Browser reads the registry, identifies all instances of SQL ServerSQL Server on the computer, and notes the ports and named pipes that they use. Если сервер имеет несколько сетевых плат, браузер SQL ServerSQL Server возвращает первый допустимый порт, который найден для SQL ServerSQL Server.When a server has two or more network cards, SQL ServerSQL Server Browser returns the first enabled port it encounters for SQL ServerSQL Server. SQL ServerSQL Server поддерживает протоколы ipv6 и ipv4.Browser support ipv6 and ipv4.

При запросе клиентом SQL ServerSQL Server ресурсов SQL ServerSQL Server клиентская сетевая библиотека передает на сервер UDP-сообщение через порт 1434.When SQL ServerSQL Server clients request SQL ServerSQL Server resources, the client network library sends a UDP message to the server using port 1434. SQL ServerSQL Server Браузер в ответ сообщает TCP/IP-порт или именованный канал запрошенного экземпляра.Browser responds with the TCP/IP port or named pipe of the requested instance. Затем сетевая библиотека клиентского приложения завершает соединение, отправляя запрос на сервер с указанием номера порта или имени канала, относящегося к нужному экземпляру.The network library on the client application then completes the connection by sending a request to the server using the port or named pipe of the desired instance.

Дополнительные сведения о запуске и остановке службы браузера SQL ServerSQL Server см. в электронной документации SQL ServerSQL Server .For information about starting and stopping the SQL ServerSQL Server Browser service, see SQL ServerSQL Server Books Online.

Поддерживаемые компонентыSupported Features

В следующей таблице можно найти компоненты, которые поддерживаются в SQL ServerSQL Server в установке Server Core.Use the following table to find which features are supported in SQL ServerSQL Server on a Server Core installation .

КомпонентFeature ПоддерживаетсяSupported Дополнительные сведенияAdditional Information
СлужбыКомпонент Database EngineDatabase EngineКомпонент Database EngineDatabase Engine Services ДаYes
SQL ServerSQL Server РепликацияReplication ДаYes
Полнотекстовый поискFull Text Search ДаYes
Службы Analysis ServicesAnalysis Services ДаYes
Службы R (в базе данных)R Services (In-Database) ДаYes
Службы Reporting ServicesReporting Services НетNo
SQL ServerSQL Server Data Tools (SSDT)Data Tools (SSDT) НетNo
Средства связи клиентских средствClient Tools Connectivity ДаYes
Сервер служб Integration ServicesIntegration Services Server ДаYes
Обратная совместимость клиентских средствClient Tools Backward Compatibility НетNo
Пакет SDK клиентских средствClient Tools SDK НетNo
Электронная документация поSQL ServerSQL ServerSQL ServerSQL Server Books Online НетNo
Основные средства управленияManagement Tools — Basic Только удаленныеRemote Only Установка этих компонентов на Server Core не поддерживается.Installation of these features on Server Core is not supported. Эти компоненты могут быть установлены на сервере, отличном от Server Core, и подключены к службам Компонент Database EngineDatabase Engine, установленным в Server Core.These components can be installed on a different server that is not Server Core and connected to the Компонент Database EngineDatabase Engine services installed on Server Core.
Средства управления — полный наборManagement Tools — Complete Только удаленныеRemote Only Установка этих компонентов на Server Core не поддерживается.Installation of these features on Server Core is not supported. Эти компоненты могут быть установлены на сервере, отличном от Server Core, и подключены к службам Компонент Database EngineDatabase Engine, установленным в Server Core.These components can be installed on a different server that is not Server Core and connected to the Компонент Database EngineDatabase Engine services installed on Server Core.
Контроллер распределенного воспроизведенияDistributed Replay Controller НетNo
Клиент распределенного воспроизведенияDistributed Replay Client Только удаленныеRemote Only Установка этих компонентов на Server Core не поддерживается.Installation of these features on Server Core is not supported. Эти компоненты могут быть установлены на сервере, отличном от Server Core, и подключены к службам Компонент Database EngineDatabase Engine, установленным в Server Core.These components can be installed on a different server that is not Server Core , and connected to the Компонент Database EngineDatabase Engine services installed on Server Core.
Пакет SDK для подключения клиентов SQLSQL Client Connectivity SDK ДаYes
Microsoft Sync FrameworkMicrosoft Sync Framework ДаYes Платформа Microsoft Sync Framework не входит в установочный пакет SQL ServerSQL Server .Microsoft Sync Framework is not included in the SQL ServerSQL Server installation package. Вы можете скачать соответствующую версию Sync Framework в Центре загрузки Майкрософт (https://go.microsoft.com/fwlink/?LinkId=221788) и установить ее на компьютер, где работает установка Server Core.You can download the appropriate version of Sync Framework from this Microsoft Download Center (https://go.microsoft.com/fwlink/?LinkId=221788) page and install it on a computer that is running Server Core.
Службы Master Data ServicesMaster Data Services НетNo
Data Quality ServicesData Quality Services НетNo

Общие сведения o SQL сервере

SQL сервер — программа, которая предназначена для хранения базы данных и обеспечения доступа к этим данным из других программ. В SQL Server включена поддержка языка XML и протокола HTTP, средства повышения быстродействия и доступности, позволяющие распределить нагрузку и обеспечить бесперебойную работу. Сложный доступ к данным используется для надежности их хранения.  SQL сервер позволяет резервное копирование в любой момент рабочего дня без отключения пользователей. Также если размер вашей базы данных стремиться к гигабайту и продолжает увеличиваться, то SQL сервер единственно возможный метод обеспечения ее функционирования. 

Существует несколько способов подключения к SQL Server. Чаще всего используют четыре варианта:

  • подключение по OLE DB — набор интерфейсов, основанных на СОМ, которые позволяют приложениям обращаться к данным, хранимым в разных источниках информации или хранилищах данных с помощью унифицированного доступа. Этот способ является наиболее рекомендуемым и современным вариантом;

  • подключение по Open DataBase Connectivity (ODBC) — интерфейс взаимодействия приложений с системами управления базами данных (СУБД);

  • подключение с использованием BDE (Borland Database Engine) — доступ к базам данных из  C++ Builder, Delphi;

  • подключение по JDBC, который позволяет приложениям под управлением Java соединяться с Microsoft SQL Server.

Термины и понятия, связанные с расширенными событиями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.
Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Adblock
detector