Делаю лабораторную работу и там нужно назвать колонку так как написано в методичке. А в методичке название для колонки совпадает с названием ключевого слова. Что мне делать? Естественно, ничего создать и адекватно обратиться у меня не получается.
У кого-то есть варианты как исправить положение?
Вот код
create database UniLabs
use UniLabs
go
create table FACULTY
(
FacNo int,
Name char(20), /* вот здесь подчёркивает Name /
Chief varchar(50),
Building char(5)
)
create table DEPARTMENT
(
DepNo int,
FacNo int,
Name varchar(50), / вот здесь подчёркивает Name */
Head varchar(50),
Building numeric(2),
Fund numeric(7)
)
Бывает, когда нужно назвать колонку или какое-то поле названием, которое уже зарезервировано каким-то ключевым словом. Для этого в MS SQL есть следующий синтаксис: [Name]. Когда мы заключаем название в прямоугольные скобки, то таким образом мы даём СУБД понять, что мы обращаемся не к ключевому слову, а к определённому объекту. Например, таким образом, можно безошибочно переписать SQL query выше:
create database UniLabs
use UniLabs
go
create table FACULTY
(
FacNo int,
[Name] char(20),
Chief varchar(50),
Building char(5)
)
create table DEPARTMENT
(
DepNo int,
FacNo int,
[Name] varchar(50),
Head varchar(50),
Building numeric(2),
Fund numeric(7)
)
Затем, обращаясь к этим объектам, нужно явно указывать таблицу и поле, к которому мы будем обращаться:
SELECT DEPARTMENT.[Name] WHERE...
(синтаксис очень приблизительный, чисто для общего понимания как пример привёл, так что может не выполниться)