Створення поля автоінкременту (лічильника) в таблиці бази даних MS SQL Server, яка розміщується в “*.mdf”-файлі

Створення поля автоінкременту (лічильника) в таблиці бази даних MS SQL Server, яка розміщується в “*.mdf”-файлі

У даній темі показано як створити поле лічильник в таблиці бази даних MS SQL Server, що розміщується у файлі “MyDataBase.mdf”.
Дана тема базується на попередніх темах:


Зміст


Пошук на інших ресурсах:




Умова задачі

Задано файли “MyDatabase.mdf” та “MyDataBase.ldf” бази даних, що призначені для роботи в системі керування реляційними базами даних Microsoft SQL Server. Файли бази даних можна завантажити в архіві тут.

База даних містить одну таблицю з іменем Source. Таблиця Source містить такі поля:

  • ID_Source – цілого типу (int);
  • Name – типу рядок з 50 символів;
  • Address – типу рядок з 100 символів.

У задачі потрібно зробити поле ID_Source унікальним лічильником.

При додаванні нового запису в таблицю значення поля повинно збільшуватись на 1 (автоінкрементне поле), тобто бути унікальним.

Виконання

1. Підключення “*.mdf”-файлу бази даних в MS Visual Studio

Запустити на виконання MS Visual Studio.

З допомогою утиліти Server Explorer потрібно підключити раніше розроблені файли “MyDataBase.mdf” та “MyDataBase.ldf”. Файли можна завантажити в архіві тут.

Рекомендовано, щоб файли були розміщені в одному каталозі.

Приклад додавання готового (раніше створеного) “*.mdf”-файлу локальної бази даних до MS Visual Studio детально описується у статті:

Після підключення бази даних у вікні Server Explorer буде відображено базу даних “MyDataBase.mdf” (рисунок 1).

База даних містить одну таблицю Source (рисунок 2), яка містить поля згідно з умовою задачі.

Visual Studio база даних Server ExplorerРис. 1. База даних MyDataBase.mdf у вікні Server Explorer

SQL Server таблиця рисунокРис. 2. Таблиця Source

2. Налаштування поля ID_Source як лічильника. Властивість “Identity Column”

Згідно з умовою задачі поле ID_Source має бути унікальним.

Сучасні бази даних підтримують унікальність полів. Це означає, що при додаванні нового запису в базу даних автоматично формується нове унікальне значення. Як правило, при додаванні нового запису для цілого типу нове унікальне значення збільшується на 1 відносно попереднього унікального значення.

Неможливо змінити вручну або програмно значення записів поля, яке є лічильником (унікальним значенням). Всю цю роботу бере на себе система керування базами даних.



Щоб встановити поле ID_Source унікальним, потрібно виконати такі дії:

  • розкрити вкладку Tables в базі даних MyDataBase.mdf (рисунок 3);
  • у вкладці Tables зробити правий клік “мишкою” і з контекстного меню викликати команду “Open Table Definition” (рисунок 3). У результаті відкриється вікно визначення полів таблиці;
  • активувати поле ID_Source і в вікні властивостей “Properties” встановити значення властивості “Identity Column = ID_Source” (рисунок 4);
  • зберегти і закрити таблицю Source.

Visual Studio команда таблиця відкритиРис. 3. Команда “Open Table Definition”

SQL Server властивість таблицяРис. 4. Встановлення властивості Identity Column в значення ID_Source

Після виконаних дій поле ID_Source буде автоматично генерувати унікальне цілочисельне значення.

Тепер таку таблицю можна використовувати у своїх проектах.

3. Заповнення таблиці даними

Після встановлення в таблиці поля ID_Source як унікального лічильника можна програмно або вручну заповнювати таблицю даними (записами).

Щоб заповнити таблицю даними (записами) потрібно виконати такі дії:

  • викликати контекстне меню з допомогою правого кліку мишкою на таблиці Source і з контекстного меню вибрати команду “Show Table Data” (рисунок 5). У результаті відкриється вікно вводу даних в таблицю (рисунок 6);
  • ввести дані в таблицю Source. Оскільки, поле ID_Source є лічильником, то вводити дані в це поле не вдасться. Можна вводити дані тільки в поля Name та Address. Значення поля Source буде генеруватись автоматично.

Visual Studio команда таблиця даніРис. 5. Команда “Show Table Data”

SQL Server дані таблицяРис. 6. Ввід даних в таблицю Source


Подібні теми