rusqhyazeubebgcahrcsdanlenetfifrglkadeelhuisgaitkkkylvltmknoplptrosrskslessvtrukuz

Построение и выполнение динамического SQL-запроса

Больше
4 мес. 2 нед. назад #182 от О.Коровяков
Пример демонстрирует программное построение и выполнение SQL-запроса.
-- таблица, чтобы было на чем показывать пример
CREATE TABLE Orders (
OrderID int IDENTITY (1, 1) NOT NULL ,
CustomerID nchar (5) NULL ,
EmployeeID int NULL ,
OrderDate datetime NULL ,
RequiredDate datetime NULL ,
ShippedDate datetime NULL ,
ShipVia int NULL ,
Freight money NULL DEFAULT (0),
ShipName nvarchar (40) NULL ,
ShipAddress nvarchar (60) NULL ,
ShipCity nvarchar (15) NULL ,
ShipRegion nvarchar (15) NULL ,
ShipPostalCode nvarchar (10) NULL ,
ShipCountry nvarchar (15) NULL
)
GO
 
-- основная часть примера, здесь будет динамически формироваться SQL-код
DECLARE
   @schemaname AS NVARCHAR(128),
   @tablename  AS NVARCHAR(128),
   @colname    AS NVARCHAR(128),
   @sql        AS NVARCHAR(805);
 
SET @schemaname = N'dbo';
SET @tablename  = N'Orders';
SET @colname    = N'CustomerID';
SET @sql = N'SELECT COUNT(DISTINCT '
   + QUOTENAME(@colname) + N') FROM '
   + QUOTENAME(@schemaname)
   + N'.'
   + QUOTENAME(@tablename)
   + N';';
 
-- выполняем SQL-инструкцию, указанную в переменной @sql
EXEC(@sql);
GO
 
-- удаляем таблицу, которая была создана в качестве примера
drop table orders;
GO

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Подпишитесь на наши новости...

Если вам интересны материалы опубликованных на Нашем сайте, Вы можете подписаться на рассылку информационных бюллетеней о новых публикациях ... Просто введите адрес электронной почты на какую Вы хотите получать Новости и нажмите кнопку "Подписаться"

Контакт Инфо

Ok-Wood.
08304 ул.Салютная,c.Гнедын,
Киевская обл, Украина
  • Тел: +39 067 492 41 24
    Tel: +38 095 095 88 60
  • Email: info@ok-wood.com.ua
  • Web: ok-wood.com.ua

Весь процесс строительства описан на страницах сайта, но более подробно о технологии, методах строительства, и всех деталях - Вы можете узнать в книге.