В старых версиях MSSQL есть меню Maintenance Plans, где имеется настройка создания бекапа баз и тут же есть настройка удаления старых бекап файлов старше -N количество дней. Так вот иногда данная настройка не отрабатывает должным образом. В таком случае мы можем пойти альтернативным путем и настроить удаление через команду forfiles.
Задача
Иногда некоторые вещи, которые кажутся сложными, гораздо проще решить, чем вы думаете, и в этом сила T-SQL для решения повторяющихся задач. Одной из таких задач может быть необходимость резервного копирования всех баз данных на вашем сервере. Это не такая большая проблема, если у вас есть несколько баз данных, но бывают и такие ситуации, где более 100 баз данных на одном и том же экземпляре SQL Server. Вы можете использовать SQL Server Management Studio для резервного копирования баз данных или даже использовать планы обслуживания, но использование T-SQL является гораздо более простым и быстрым подходом в данной ситуации.
Порой в коде 1С необходимо указать возможность выбора каталога для сохранения файла, для данной цели подойдет следующий код:
Если, напротив, необходимо написать код для выбора файла, то подойдет следующий код:
Процедура КаталогДляПолученияФайловНачалоВыбора(Элемент, СтандартнаяОбработка)
СтандартнаяОбработка = Ложь;
РежимДиалога = РежимДиалогаВыбораФайла.ВыборКаталога;
ДиалогВыбораКаталога = Новый ДиалогВыбораФайла(РежимДиалога);
ДиалогВыбораКаталога.МножественныйВыбор = Ложь;
ДиалогВыбораКаталога.Заголовок = "Выберите путь для сохранения файлов";
Если ДиалогВыбораКаталога.Выбрать() Тогда
КаталогДляПолученияФайлов = ДиалогВыбораКаталога.Каталог;
КонецЕсли;
КонецПроцедуры
Если, напротив, необходимо написать код для выбора файла, то подойдет следующий код:
Процедура ВыбратьФайл(Элемент)
ДиалогВыбора = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.Открытие);
ДиалогВыбора.Заголовок = "Выберите файл";
Если ДиалогВыбора.Выбрать() Тогда
ИмяФайла = ДиалогВыбора.ПолноеИмяФайла;
КонецЕсли;
КонецПроцедуры
Независимо от того, собираетесь ли вы когда-нибудь работать с командной строкой, рассмотрите детально следующие примеры. Они вам пригодятся и для работы в нормальной графической среде тоже.
Универсальной утилитой командной строки, позволяющей выполнять операторы Transact-SQL в SQL Server, является sqlcmd. Описание наиболее часто используемых параметров этой утилиты см. в приложении 3.
Для создания базы данных запустите на выполнение командную строку или Windows PowerShell. На экране появится соответствующее окно и подсказка, например:
PS C:\Users\Administrator>
Для удаления созданной пользователем и существующей в текущем экземпляре сервера базы данных используется оператор DROP DATABASE. Его синтаксис показан в листинге 3.4 и соответствующем R-графе (граф 3.8).
В этом разделе мы рассмотрим всевозможные способы создания пользовательских баз данных при применении как оператора Transact-SQL CREATE DATABASE, так и диалоговых средств Management Studio. Кроме создания баз данных мы научимся их удалять при помощи простого оператора DROP DATABASE, а также при использовании диалоговых средств Management Studio.
Для отображения характеристик и состояния существующей базы данных средствами Transact-SQL можно использовать описанные системные представления и диалоговые средства, существующие в Management Studio. Мы рассмотрим все подходящие варианты.
Для отображения характеристик и состояния существующей базы данных средствами Transact-SQL можно использовать описанные системные представления и диалоговые средства, существующие в Management Studio. Мы рассмотрим все подходящие варианты.
Получить сведения о базах данных (как системных, так и пользовательских) и об их файлах можно при использовании множества разнообразных средств, входящих в состав SQL Server, которыми являются:
системные представления;
системные хранимые процедуры;
системные функции;
диалоговые средства компонента Management Studio.
Каждый файл базы данных (как файл данных, так и файл журнала транзакций) имеет свой набор характеристик.
У каждого файла помимо имени, известного в операционной системе, существует и логическое имя (logical name), по которому к файлу можно обращаться в операторах Transact-SQL и при использовании различных компонентов SQL Server.
Основные характеристики файлов базы данных
Каждый файл базы данных является либо файлом данных (rows data, строки данных), либо файлом журнала транзакций (log).У каждого файла помимо имени, известного в операционной системе, существует и логическое имя (logical name), по которому к файлу можно обращаться в операторах Transact-SQL и при использовании различных компонентов SQL Server.
Каждая база данных имеет множество характеристик. Характеристики базы данных, их значения по умолчанию и средства, используемые для изменения текущих значений, описаны в приложении 4.
Рассмотрим некоторые из этих характеристик.
Владелец базы данных (Owner)
Владелец базы данных (owner) имеет все полномочия к базе данных. Он может изменять характеристики базы, удалять ее, вносить любые изменения в данные и метаданные. Владельцем базы становится пользователь, создавший базу данных.
В созданной пользователем базе данных хранится множество объектов. Главным объектом являются, разумеется, таблицы, в которые вы помещаете все данные, необходимые для решения задач конкретной предметной области. Кроме таблиц база данных хранит пользовательские типы данных, триггеры, хранимые процедуры, индексы и др. База данных содержит как сами данные, хранящиеся в таблицах, так и метаданные, описывающие эти данные. Хранение в базе данных и метаданных является важнейшим принципом, применяемым во всех базах данных. Это позволяет уменьшить зависимость программ от структуры базы данных.