Как создавать новые объекты базы данных с помощью запросов
Если вы предпочитаете использовать скрипты для создания или изменения представлений, хранимых процедур, функций, триггеров и определяемых пользователем типов, то для этого можно пользоваться редактором Transact-SQL.Редактор Transact-SQL обеспечивает поддержку технологии IntelliSense и других языков.Дополнительные сведения см. в разделе Использовать редактор Transact-SQL для изменения и выполнения скриптов.
Редактор Transact-SQL вызывается, когда через контекстное меню Просмотр кода открывается сущность базы данных в подключенной базе данных или проекте.Кроме того, он автоматически открывается при использовании контекстного меню Создать запрос в окне Обозреватель объектов SQL Server или при добавлении нового объекта скрипта в проект базы данных.Если вы не соединены с базой данных, но хотите выполнить в ней запрос, можно также воспользоваться диалоговым окном Новое соединение с запросом, выбрав пункт Редактор Transact-SQL в меню SQL для соединения с базой данных и запуска редактора Transact-SQL.
Предупреждение |
---|
В следующих процедурах используются сущности, созданные в предыдущих процедурах раздела Разработка подключенной базы данных. |
Создание новой таблицы с помощью запроса Transact-SQL
Щелкните правой кнопкой мыши узел базы данных Trade и выберите Создать запрос.
Вставьте следующий код в области скрипта:
CREATE TABLE [dbo].[Fruits] ( [Id] INT NOT NULL, [Perishable] BIT DEFAULT ((1)) NULL, PRIMARY KEY CLUSTERED ([Id] ASC), FOREIGN KEY ([Id]) REFERENCES [dbo].[Products] ([Id]) );
Нажмите кнопку Выполнить запрос на панели инструментов в редакторе Transact-SQL, чтобы запустить этот запрос.
Щелкните правой кнопкой мыши базу данных Trade в Обозреватель объектов SQL Server и выберите команду Обновить.Обратите внимание, что в базу данных добавлена новая таблица Fruits.
Создание новой функции
Замените код в текущем редакторе Transact-SQL следующим кодом:
CREATE FUNCTION [dbo].GetProductsBySupplier ( @SupplierId int ) RETURNS @returntable TABLE ( [Id] int NOT NULL, [Name] NVARCHAR (128) NOT NULL, [Shelflife] INT NOT NULL, [SupplierId] INT NOT NULL, [CustomerId] INT NOT NULL ) AS BEGIN INSERT @returntable SELECT * from Products p where p.SupplierId = @SupplierId RETURN END
Эта функция возвращает все строки в таблице Products, параметр которой SupplierId равен указанному параметру.Нажмите кнопку Выполнить запрос на панели инструментов в редакторе Transact-SQL, чтобы запустить этот запрос.
В окне Обозреватель объектов SQL Server в узле Trade разверните узлы Программирование и Функции.Новую, только что созданную функцию можно найти в разделе Возвращающие табличное значение функции.
Создание нового представления
Замените код в текущем редакторе Transact-SQL следующим кодом:Затем нажмите кнопку Выполнить запрос над редактором, чтобы выполнить этот запрос.
CREATE VIEW [dbo].PerishableFruits AS SELECT p.Id, p.Name FROM dbo.Products p join dbo.Fruits f on f.Id = p.Id where f.Perishable = 1
В окне Обозреватель объектов SQL Server обозревателя сервера в узле Trade разверните узел Представление, чтобы найти только что созданное представление.
См. также
Управление таблицами, связями, исправление ошибок
Использовать редактор Transact-SQL для изменения и выполнения скриптов