Transact-SQL, модификация на база данни и таблици
Промяна на базата данни
За смяна на физическата структура на база данни, използвана инструкция ALTER базата данни на. Transact-SQL език ви позволява да изпълните следните стъпки, за да се променят свойствата на бази данни:
добавяне и изтриване на един или повече файлове с бази данни;
добавяне и изтриване на един или повече лог файлове;
добавяне и изтриване на файлове група;
промените свойствата на файлове или файлови групи;
инсталиране на опции на бази данни;
промяна на името на базата данни с помощта на съхранена процедура sp_rename.
Тези различни видове модификации на бази данни, обсъдени по-късно.
Добавяне и изтриване на файлове с бази данни, лог файлове и файлови групи
Добавяне или изтриване на файлове на базата данни се извършва чрез изявление на базата данни ALTER. Операция за да добавите нов или изтриване на съществуващ файл е посочена и предлагат Добавяне на файл изтрива файла съответно. В допълнение, на нов файл може да се определи в съществуващ файл група, като зададете ДА FILEGROUP.
Следващият пример показва как да добавите нов файл с база данни в SampleDb на базата данни:
В този пример изявлението базата данни ALTER добавя нов файл с име логично sampledb_dat1. Той също така посочи първоначалния размер на файла 10 MB и автоматично увеличаване на 5 MB до максимален размер от 100 MB. Добавят Регистрационните файлове, както и файлове за бази данни. Единствената разлика е, че вместо да обяви ADD клауза файл се използва ДОБАВИ лог файл.
Изтриване на файлове (файлове с бази данни и лог файлове) от базата данни се осъществява чрез предлагане изтрива файла. Файл за да се заличи трябва да е празен.
Новият файл е създаден от група предложения СЪЗДАВАНЕ FILEGROUP. и токът е отстранен от предложенията DELETE FILEGROUP. Как и изтриване на файлове, изтриване на файлове група също трябва да е празен.
Промяна на свойствата на файлове и файлови групи
С модифицира ФАЙЛОВИ предложения за изпълнение на следните стъпки, за да се променят свойствата на файл:
промените логично името на файла се използва параметърът NEWNAME;
увеличи стойността на размера;
промените стойността на името на файла свойства. MAXSIZE и FILEGROWTH;
маркира файла като офлайн.
По същия начин чрез МОДИФИЦИРАТЕ FILEGROUP предложения могат да изпълняват следните действия за промяна на свойствата на файл група:
промяна на логическо име на файла на групата, като се използва името на параметъра;
група файл етикет като групата на файла по подразбиране, използвайки стандартната опция;
файл група етикет, тъй като позволява с помощта на параметъра или read_only read_write съответно за достъп само за четене или за четене и запис.
Настройка на опциите на бази данни
За да настроите различни опции на бази данни посредством инструкциите на ALTER DATABASE предлагат комплекта. Някои опции могат да се задават само на Включено или Изключено, но повечето от тях имат възможност за избор от списък с възможни стойности. Всяка опция база данни има стойност по подразбиране, който се помещава в базата данни на модела. Поради това, стойностите на някои опции по подразбиране могат да бъдат модифицирани чрез промяна базата данни на модела.
Всички опции, чиито стойности могат да бъдат променени, могат да бъдат разделени в няколко групи, като най-важните от които са състоянието на опцията, възможността за автоматични действия и SQL опция.
Опции за контрол на състоянието на следните характеристики:
достъп до базата данни на потребителите (тази опция single_user, restricted_user и multi_user);
бази данни статус (тази опция онлайн, офлайн и аварийно);
Прочетох и режим (read_only и read_write опция) пишат.
Опции автоматични операции за контрол, наред с други неща, спрете базата данни (по желание Auto_Close) и начина за създаване на статистиките на индекс (auto_create_statistics и auto_update_statistics опция).
SQL опция контролира съответната база данни и неговите обекти ANSI стандарт. Стойностите на всички SQL отчети могат да бъдат намерени чрез функция DATABASEPROPERTY. и редактиране - с помощта на отчета за DATABASE ALTER.
Опции за възстановяване пълен, групово, влезли и прост контрол на процеса на възстановяване на база данни.
Съхраняване FILESTREAM на тип данни
Описвайки типове данни на T-SQL ние разгледахме тип FILESTREAM данни, както и причините, поради които те се използват. В този раздел, ние обсъждаме как тип FILESTREAM данни могат да се съхраняват в базата данни. FILESTREAM данни, които могат да се съхраняват в базата данни, системата трябва да бъде правилно започнато. В следващия раздел обяснява как да се започне на операционната система и база данни, например за типа данни магазин FILESTREAM.
съхранение Иницииране FILESTREAM
тип FILESTREAM хранилището за данни изисква за откриване на две нива:
за операционната система Windows;
за дадена инстанция на сървъра на базата данни.
SQL Server Configuration мениджър ще създаде система, която да бъде домакин на нов публичен папка с посоченото име. За да влязат в сила промените, щракнете върху OK.
За да се даде възможност за съхранение FILESTREAM, трябва да сте администратор на локалната система Windows и да сте администратор (администратор). За да се направят промените, трябва да рестартирате инстанция на сървъра на базата данни.
Следващата стъпка е да се разреши съхранението на FILESTREAM за конкретен случай. Ние ще видим как да се изпълни тази задача с помощта на околната среда SQL Server Management Studio. (За да направите това, можете да използвате и съхраняват от sp_configure с опция FILESTREAM ниво на достъп.) Щракнете с десния бутон на желаното място в Object Explorer и от контекстното меню изберете Properties, в левия панел, който се отваря диалогов прозорец сървър Properties, щракнете върху Advanced (Разширени):
След това в списъка падащото десния панел изберете FILESTREAM Ниво на достъп (ниво на достъп FILESTREAM) една от следните опции:
За хора с увреждания - съхранение FILESTREAM не е позволено.
Enabled Transact-SQL Access
Включени достъп чрез Transact-SQL - FILESTREAM данни могат да бъдат достъпни от инструкции T-SQL.
Enabled пълен достъп
Включително пълен достъп - до данните за FILESTREAM могат да бъдат достъпни както чрез инструкциите T-SQL, както и чрез Win32 API интерфейс.
Добавяне на файл във файл група
FILESTREAM позволява съхранение на желаната Например, може първо да се създаде файл група за данни FILESTREAM (от инструкции ALTER DATABASE), и след това се добавя на файл в групата на файла, както е показано в примера по-долу. (Разбира се, тази задача може също така да се извърши с помощта Създаване на изявление на база данни.)
първо ALTER изявлението базата данни в примера добавя нов файл група Employee_FSGroup SampleDb база данни. Параметърът съдържа FILESTREAM това твърдение казва системата, която групата на файл ще съдържа само данни FILESTREAM. второ ALTER изявлението базата данни добавя файл група създаден нов файл.
Вече можете да създавате таблици, съдържащи колони с данни тип FILESTREAM. Създаването на такава таблица е показано в примера по-долу:
В този пример, таблица съдържа EmployeeInfo FilestreamData колона чийто тип данни трябва да бъде VARBINARY (MAX). Определяне на такава колона включва FILESTREAM атрибут показва, че данните, съхранявани в групата на колона FILESTREAM файл. За всички таблици, в които се съхраняват тип данни FILESTREAM, изисква свойства UNIQUE ROWGUIDCOL. Следователно, таблицата съдържа колона EmployeeInfo Id, определя, използвайки тези две качества.
FILESTREAM данни в графата Тип се вмъкват чрез стандартен изявление INSERT. И за четене на данни с помощта на стандартен SELECT изявление.
Самостоятелна база данни
Един от основните проблеми с базите данни на SQL Server, е, че те са трудни за износ и внос. Както беше обсъдено по-рано, базата данни може да бъде прикрепен и самостоятелна, но загуби важни части от имота и свързани бази данни. (Основният проблем в такива случаи е базата данни за сигурност, като цяло, и записи, по-специално, в който след преместването обикновено липсва част от информацията или съдържа невярна информация).
Microsoft има планове за решаване на тези проблеми чрез използване на самостоятелна база данни (съдържащи бази данни). Самостоятелна база данни съдържа всички параметри и данни, необходими за определяне на базата данни, и е изолирана от копието на Database Engine, на който е инсталиран. С други думи, този вид база данни не са зависимости от инстанция на конфигурация и могат лесно да бъдат преместени от едно SQL Server инстанция към друга.
В по-голямата си част, по отношение на автономия, има три вида бази данни:
напълно самостоятелна база данни;
частично автономна база данни;
неавтономния база данни.
Напълно тези бази данни са автономни обекти, които не могат да се движат през границата на кандидатстване. (Граница заявка се определя от обхвата на приложение. Например, дефинирани от потребителя функции са разположени в границите на прилагането, докато функциите свързани с случаи на сървъра са извън границите на приложението.)
Частично автономни приложения за бази данни позволяват обекти, за да преминават границата, докато неавтономния базата данни не подкрепят идеята за граница приложение.
ALTER DATABASE изявление променя статута на автономия SampleDb база данни с неавтономния и частично автономно. Това вече означава, че системата от база данни ви позволява да създавате и двете самостоятелни неавтономни обекти на база данни SampleDb. Всички други инструкции в примера, допълват ALTER изявление база данни.
функция sp_configure система е процедура, която може да се използва, включително промяна на конфигурацията на допълнителни параметри като ", съдържащ база данни удостоверяване. За да промените разширените опции за конфигуриране, първо трябва да зададете стойност 1 на стойност "Показване на разширените опции", а след това се преконфигурира системата (изявление преконфигурира). В края на кода отново, този параметър се определя стойността му по подразбиране - 0.
Сега можете да създадете потребител, който не е свързан с един профил по данните от базата данни SampleDb.
Промяна на таблици
За да промените схемата на маса използван ALTER TABLE изявление. Transact-SQL език осигурява следната таблица на промените:
добавяне и изтриване на колони;
модифицират свойствата на колоните;
добавяне и премахване на ограниченията, за да гарантират целостта;
активиране или деактивиране граница;
преименуване на таблици и други обекти на базата данни.
Тези видове промени се считат за по-нататък в следващите раздели.
Добавяне и изтриване на колони
За да добавите нова колона към съществуваща таблица в отчета за ALTER TABLE, се използва предложение ADD. В изявление на ALTER TABLE, можете да добавите само една колона. оферти приложение Добавяне показано в примера по-долу:
В този пример, отчета за ALTER TABLE, добавя колона в PhoneNumber на масата на служителите. Машината на базата данни попълва новата колона стойности NULL или лична или определят стойности по подразбиране. Поради тази причина, нова колона трябва или да подкрепят стойност NULL, или за да се настрои на по подразбиране.
Новият колоната не може да се вмъкне в таблица в определена позиция. Колона добавя изречение ADD, винаги се добавя в края на таблицата.
Колоните в таблицата се заличават, като предлага DROP колона. Прилагането на това предложение в следния пример:
В този код, отчет ALTER TABLE изтрива колона маса Служител PhoneNumber, който е бил добавен към тази таблица предложение ADD-рано.
Промяна колона свойства
За да промените свойствата на съществуваща колона използва оферта ALTER КОЛОНА ALTER TABLE изявление. Податлив на промените следните свойства на колоната:
Подкрепа NULL стойности.
Приложение предлага ALTER КОЛОНА е показано в примера по-долу:
ALTER TABLE изявление в този пример, промяна на първоначалните качества (nchar (40), нула стойности са позволени), местоположението колона от таблицата в новия отдел (nchar (25), стойностите не са позволени NULL).
Добавяне и премахване на ограниченията за гарантиране на целостта (и ключовете за проверка)
За да добавите таблица на нови ограничения, за да се гарантира целостта на параметъра се използва ДОБАВИ ОГРАНИЧЕНИЯ ALTER TABLE изявление. Следният пример илюстрира използването на ограничение на параметъра Добавяне за добавяне на условието за проверка, както и определяне на първичния ключ на таблицата:
В този пример, първо да създадете отчет TABLE създава маса продажби, съдържащ две колони с типове данни са ДАТА: ORDERDATE и ShipDate. Освен това, отчета за ALTER TABLE, определя ограничение да се гарантира целостта на order_check, което сравнява стойността на двете колони, и показва съобщение за грешка, ако датата на изпращане ShipDate по-рано от датата на ORDERDATE на поръчката. Допълнителна ALTER TABLE изявление се използва за определяне на първичния ключ на таблицата в Id на колоната.
Ограничения за да се гарантира целостта могат да бъдат отстранени, като предлага DROP ОГРАНИЧЕНИЯ ALTER TABLE изявление, както е показано в примера по-долу:
Идентифициране на съществуващите ограничения не могат да бъдат променени. За да промените срока, първо е необходимо да се отстрани, а след това се създаде нов, съдържащ необходимите изменения.
Включване и изключване ограничения
Следният пример показва как да деактивирате всички таблицата с ограничения:
Всички маса ограничения за продажбите са деактивирани по ключова дума ALL. Нанесете NOCHECK опция не се препоръчва, защото всяко нарушение на потиснатите ограничения може да доведе до грешки при бъдещи актуализации.
Преименуване на таблици и други обекти на база данни
За да промените името на съществуваща таблица (или други обекти на база данни, като например база данни, преглеждате или съхранена процедура а) се прилага процедура система sp_rename на. Следният пример илюстрира използването на тази процедура система:
Използвайте sp_rename на процедура система не се препоръчва, тъй като промяната на имената на обектите може да повлияе на други обекти на база данни, която ги споменават. Вместо това, премахване на обекта и да го пресъздаде с новото име.
Изтриване на обекти на база данни
Всички Transact-SQL изявления за премахване на обектите на база данни имат следната обща форма:
За всяко твърдение създаване на обекта, за да се създаде обект има съответен инструкция DROP обект, за да се отстранят. Инструкции за премахване на една или повече бази данни е както следва:
Това твърдение изтрие окончателно базата данни от системата за база данни. За да изтриете една или повече таблици, се прилага следното изявление:
При изтриване на маса изтрива всички негови данни, показатели и тригери. Но идеята започна на отдалечена маса, не са отстранени. Таблица да изтривате само потребителят има съответните разрешения.
Освен обект на базата данни и изявление на маса, в обектите се откажа, може да бъде определен отчет параметри, между другото, следните съоръжения: