Добро пожаловать, Гость
Логин: Пароль: Запомнить меня
  • Страница:
  • 1

ТЕМА:

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

  • Олег Коровяков
  • Олег Коровяков аватар Автор темы
  • Не в сети
  • Автор сайта
  • Автор сайта
  • Сообщений: 280
  • Репутация: 1
  • Спасибо получено: 1
Пример демонстрирует программное построение и выполнение 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

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

  • Страница:
  • 1
Модераторы: Дмитрий

О сайте

Строительство индивидуальных домов из лёгкого самана - опыт, советы, методика строительства и подробные инструкции. А также возможность применения альтернативных источников энергии.


Контакты

08340. ул.Салютная 17. с.Гнедын.
Киевская обл. Украина.

+38 067 492 4124.
+38 095 065 8860.

info@okwood.com.ua
www.okwood.com.ua

Местоположения


8PM2+7R Гнедин, Kyiv Oblast