Включає і настроює filestream на вже існуючій бд за допомогою візуального інтерфейсу ms sql

У даній статті я розповім як включити роботу з файловим типом даних - filestream - в разі, якщо база даних вже створена раніше. Більшість прикладів в мережі Інтернет розповідає тільки як налаштувати filestream при створенні нової бази і призводять SQL-скрипти для цього. Є й приклади з оновленням бази даних, але знову ж таки з приведенням SQL-скриптів. Насправді це можна зробити і через візуальний інтерфейс MS SQL Server Management Studio. Про це і піде мова в даній статті.

Тобто в даному прикладі стоїть завдання створити нову таблицю для зберігання filestream даних на вже існуючій базі даних.

Крок 1. Створення файлової групи. Всі створені в подальшому папки для зберігання записів типу filestream будуть об'єднуватися в ці групи. Ви можете створити одну групу або кілька в залежності від потреб.

Спочатку нам необхідно відкрити властивості бази даних, для цього в вікні Object Explorer виберіть свою базу і в контекстному меню перейдіть за пунктом "Properties":

Включає і настроює filestream на вже існуючій бд за допомогою візуального інтерфейсу ms sql

У діалоговому вікні властивостей обраної БД в блоці "Select a page" виберіть пункт "Filegroups".

У правій частині вікна під блоком Filestream натисніть кнопку "Add". З'явиться новий рядок, в якій в колонці "Name" введіть будь-яке довільне назву групи на англ.мові без пробілів.

Включає і настроює filestream на вже існуючій бд за допомогою візуального інтерфейсу ms sql

Крок 2. Створення папки для зберігання даних типу filestream.

Не закриваючи попереднє вікно, в блоці "Select a page" виберіть пункт "Files". Натисніть кнопку "Add" і в рядку, що з'явився заповніть наступні колонки:

  • Колонка "File Type" - виберіть тип "Filestream Data"
  • Колонка "Filegroup" - вкажіть раніше створену файлову групу
  • Колонка "Logical Name" - введіть будь-яке довільне назву на англ.мові без пробілів (надалі сервер створить папку з таким ім'ям)
  • Колонка "Path" - вкажіть шлях, де будуть зберігатися всі файли типу filestream. Шлях повинен бути вказаний без останньої папки, тому що її сервер створить сам по імені попередньої колонки.

Тепер можна натиснути кнопку ОК, щоб зберегти результат:

Включає і настроює filestream на вже існуючій бд за допомогою візуального інтерфейсу ms sql

Щоб побачити, що зробив SQL сервер в результаті наших дій, перейдіть по шляху, який Ви вказали як шлях для зберігання filestream-даних.

Ви побачите, що була створена папка, на ім'я "Logical Name", в якій розташовані деякі службові файли і папки:

Змінювати або видаляти дану службову інформацію не рекомендується.

Крок 3. Створення нової таблиці для зберігання даних типу filestream. Ось тут на жаль без SQL-скрипта не обійтися, тому що створити подібний filestream-стовпець через конструктор таблиць неможливо. Тому я рекомендую спочатку створити таблицю з обов'язковими для filestream колонками за допомогою скрипта, а потім вже через конструктор доповнити її потрібними Вам полями.

Отже, відкриваємо вікно для введення скриптів (для цього виберіть свою БД і натисніть кнопку "New Query").

У вікні, введіть наступний скрипт:

Буде створена таблиця з двома обов'язковими полями: поле fileGUID - обов'язковий ідентифікатор, який сервер буде використовувати для позначення фалів, і поле fileDATA. безпосередньо посилається на потрібний файл в файловій системі.

Після виконання даного скрипта в створеній раніше папці Ви побачите нову папку з ім'ям, схожим на якийсь ідентифікатор. Ця папка буде відповідати Вашій таблиці і в ній будуть зберігатися збережені файли.

Тепер Ви можете перейти в конструктор таблиці і доповнити її потрібними полями.

Зверніть увагу, що з конструктора не видно, чи є поле fileDATA полем типу filestream.

Якщо Ви хочете перевірити, чи є колонка полем типу filestream. можна виконати такий скрипт:

В результаті виконання цього скрипта, Ви побачите список всіх колонок зазначеної таблиці, які мають атрибут filestream.