Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Ръководство за начинаещи за SQL таблици

В тази статия ще разгледаме различните типове SQL таблици и най-добрите практики за създаване на потребителски дефинирани таблици в SQL Server.

Таблиците са основни обекти за съхранение на данни в релационни бази данни. За да визуализирате таблица, помислете за електронна таблица на Excel. Електронната таблица организира данните във формат на редове и колони. По същия начин релационните бази данни използват множество таблици (листове) за организиране на данни.

  • Ред :Уникално идентифицира запис. Например данните от ред 1 принадлежат на служител на име [Raj]. Не може да съхранява данни за друг служител.
  • Колона :Всяка колона дефинира атрибут на таблицата. Например колоната [FirstName] съхранява първото име за всички служители. Не можете да съхранявате други данни като [Град] в тази колона.

Да предположим, че имаме нужда от таблица [Employee] в SQL база данни. Тази таблица съхранява записи на служителите на компанията. За колоната [EmpID] изискваме положително число (без десетична запетая). В този случай типът данни [integer] е най-подходящ. След като сте дефинирали колоната [EmpID] като цяло число, SQL Server не ви позволява да вмъквате стойности, които не отговарят на целочисления тип данни. Например, не можете да вмъкнете низа „Raj“ в колоната [EmpID[.

Създаване на SQL таблица

На високо ниво, за да създадем SQL таблица, трябва да имаме следната информация:

  1. Какво е името на SQL екземпляр и база данни за съхранение на обекти?
  2. В коя схема искате да съхранявате таблицата?
  3. Какви са имената на колоните за вашата конкретна таблица?
  4. Какви са типовете данни за тези колони?
  5. Колоните позволяват ли съхраняване на стойности NULL?
  6. Използвате ли колоната с първичен ключ? Ако да, коя колона ще действа като колона с първичен ключ?
  7. Искате ли да създадете някакви неклъстерирани индекси?

За тази демонстрация нека използваме следните отговори на тези въпроси, за да създадем таблицата на служителите.

  • Отговор 1:Името на целевата база данни е [AzureDemoDatabase]
  • Отговор 2:Искаме да съхраняваме таблици в DBO схемата по подразбиране
  • Отговор 3:Таблицата [Employee] трябва да има пет колони:[ID], [FirstName], [LastName], [City] и [DOB]
  • Отговор 4:Таблицата [Employee] трябва да използва следните типове данни.
    • [ID]:цяло число
    • [FirstName]:Varchar(50) НЕ НУЛЕВО
    • [Фамилно име]:Varchar(30) НЕ НУЛЕВО
    • [Град]:Varchar[50] NULL
    • [DOB]:ДАТАТА НЕ НУЛА
  • NULL свойства, както са дефинирани по-горе
  • Да, колоната [ID] е колона с първичен ключ
  • Не, необходими са само клъстерни индекси

Типове SQL таблици

Таблиците на SQL Server могат да бъдат разделени в следните категории.

Системни таблици

SQL Server съхранява конфигурацията на екземпляра и свойствата на базата данни в специален набор от таблици. Тези таблици са известни като системни таблици. На потребителите не е разрешено директно да правят промени в тези таблици. SQL Server не позволява директно запитване на специфични системни таблици. Вместо това той предоставя системни съхранени процедури, функции, обекти за управление на SQL Server и обекти за управление на репликация за запитване на тези компоненти. Можете да се обърнете към документите на Microsoft за да разберете по-подробно системните таблици.

Временни таблици

Понякога се налага да съхраняваме данни временно в базата данни за изчисляване, манипулиране или съхраняване на междинни резултати. В тези случаи можем да използваме временни таблици, които винаги се съхраняват в системната база данни TempDB.

SQL Server има два типа временни таблици:

  • Местно: Всяка локална временна таблица започва със знак (#). Неговият обхват е ограничен до текущата връзка. SQL Server автоматично премахва тези таблици, след като потребителят прекъсне връзката.
  • Глобално: Всяка глобална временна таблица започва със знак (##). Всички потребители могат да се позовават на глобалните временни таблици. Ако всички потребители, които се позовават на глобалната таблица, са свързани, SQL Server я прекратява.

–TEMPORARY Table (Local)
Създайте таблица #TableA
(
ID int,
[Име] varchar(50)
)

–Глобална временна таблица
Създаване на таблица ##TableB
(
ID int,
[Име] varchar(50)
)

Постоянна или дефинирана от потребителя таблица

Потребителите могат да дефинират своя собствена структура на таблицата, колони, типове данни, ограничения и индекси според изискванията на тяхното приложение. Тези таблици се наричат ​​потребителски дефинирани таблици.

Тези таблици винаги се съхраняват в базата данни, освен ако някой изрично не ги пусне. Следователно те са известни още като постоянни таблици.

Има няколко начина за създаване на дефинирана от потребителя таблица в SQL Server.

  • GUI на SQL Server Management Studio
  • Използване на T-SQL скрипт

–Постоянна таблица
Създаване на таблица TableA
(
ID int,
[Име] varchar(50)
)

Външни таблици

Външните таблици са специфичен тип таблица, която може да се използва в SQL Server 2016 нататък. Тези таблици препращат към други източници на данни, като например Azure blob съхранение, Hadoop, Oracle, Excel, ODBC, Bigdata, MongoDB и Teradata, използвайки функцията PolyBase на SQL Server.

Можете да се обърнете към тази документация за да изследвате допълнително PolyBase в SQL Server.

Таблици с графики

Графичните бази данни на SQL Server използват колекция от различни възли (върхове) и ръбове (връзки).

  • Таблица с възли :Таблицата с възли е колекция от възли с подобни типове. Например таблицата с възли на човек има всички възли на човек в графика.
  • Таблица за ръбове :Таблицата за ръбове е колекция от подобни ръбове. Например таблица с приятели съдържа всички ръбове, които свързват човек с друг човек.

За да проучите това по-нататък, препоръчайте категориите на базата данни на графиките.

Указания за създаване на дефинирана от потребителя таблица в SQL Server

  • Дефинирайте подходяща конвенция за именуване за имена на таблици.
  • Използвайте различни схеми, за да групирате подобни обекти в таблицата.
  • Винаги се уверявайте, че референтната цялост се поддържа с помощта на ограниченията на SQL Server като първичен ключ и външен ключ.
  • Винаги дефинирайте подходящ тип данни и тяхната дължина, за да четете и записвате бързо данни.
  • Използвайте техники за нормализиране на базата данни, за да намалите излишъка на данните и да подобрите целостта на данните.
  • Разберете различните форми за нормализиране и как да ги използвате. (Можете да препратите към тази статия: Какво е нормализиране на базата данни в SQL Server?)
  • Дефинирайте подходящи индекси за натоварванията на заявките си.
  • Винаги се консултирайте със специалисти по база данни за съвет относно моделирането на бази данни и прилагането на най-добри практики

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL OUTPUT Съхранените процедури не работят с ExecuteReader

  2. Проверете дали таблицата съществува в SQL Server

  3. Премахване на акаунт в база данни за поща от профил (SSMS)

  4. Нулиране на началната стойност на самоличността след изтриване на записи в SQL Server

  5. Не може да се разреши конфликтът на съпоставяне между SQL_Latin1_General_CP1_CI_AS и Latin1_General_CI_AS в операция равна на