Поделиться через


Образец Array Parameter

Изменения: 14 апреля 2006 г.

Иногда бывает необходимо создавать, обновлять или удалять набор строк в базе данных. Существует несколько подходов, которые можно использовать для достижения этой цели. Один из них — передавать массив данных от клиента в хранимую процедуру среды CLR на сервере через определяемый пользователем тип данных интеграции со средой CLR. Природа таких пользовательских типов данных ограничивает данные, передаваемые серверу, размером 8 000 байт. По этой причине такое решение не подходит для больших или сложных данных. Дополнительные сведения см. в хранимой процедуре создания контакта в образце AdventureWorks Cycles CLR Layer. Если обрабатываемые данные имеют простую структуру и небольшой объем, этот подход может оказаться более эффективным, чем вызов хранимой процедуры для каждой строки. При передаче массива порядок данных сохраняется для тех приложений, в которых этот порядок является важным.

Этот образец содержит следующее.

  1. Пользовательский тип данных ContactTypeNames. Данный тип содержит список имен желательных типов контактов.
  2. Хранимая процедура usp_EnsureContactTypeNames, реализованная в виде метода Microsoft Visual C# или Microsoft Visual Basic. Метод принимает экземпляр определяемого пользователем типа данных ContactTypeNames и вставляет в таблицу Person.ContactType данные, которых еще нет в таблице, из экземпляра определяемого пользователем типа данных.
  3. Приложение командной строки TestArrayParameter. Создает экземпляр определяемого пользователем типа данных ContactTypeNames, на основе параметров, передаваемых в командной строке, а затем вызывает хранимую процедуру usp_EnsureContactTypeNames, передавая ей созданный экземпляр в качестве параметра.

Каталог установки: диск:\Program Files\Microsoft SQL Server\90\Samples\Engine\Programmability\CLR\ArrayParameter\

Сценарий

Джейн — разработчик базы данных Adventure Works Cycles. Ей нужно вставить небольшое количество простых строк в таблицу, при этом она хочет сократить число обменов с базой данных.

Языки

Transact-SQL, Visual C# и Visual Basic.

Возможности

Образец «Array Parameter» использует следующие возможности Microsoft .

Часть образца Возможности

Все части

Среда CLR, пользовательский тип данных, язык Transact-SQL

Предварительные требования

Прежде чем запустить этот образец, убедитесь, что установлено следующее программное обеспечение.

  • Microsoft SQL Server 2005 или Microsoft SQL Server 2005 Express Edition (SQL Server Express). SQL Server Express можно получить бесплатно на веб-узле «Документация и образцы SQL Server 2005 Express Edition».
  • База данных AdventureWorks, включенная в поставку SQL Server 2005, также доступна на веб-узле SQL Server Developer .
  • Образцы компонента SQL Server 2005 Database Engine. Данные образцы входят в комплект SQL Server 2005. Последнюю версию образцов можно загрузить в центре разработчиков на.
  • Пакет .NET Framework SDK 2.0 или среда Microsoft Visual Studio 2005. Пакет .NET Framework SDK можно получить бесплатно. См. раздел Установка пакета .NET Framework SDK.

Построение образца

Если файл ключа для строгого имени еще не создавался, создайте его следующим образом.

To generate a strong name key file

  1. Откройте командную строку Microsoft Visual Studio 2005. Нажмите кнопку Пуск, укажите пункты Все программы, Microsoft .NET Framework SDK v2.0 и выберите пункт Командная строка пакета SDK.

    -- или --

    Откройте командную строку Microsoft .NET Framework. Нажмите кнопку Пуск, укажите пункты Все программы, Microsoft .NET Framework SDK v2.0 и выберите пункт Командная строка пакета SDK.

  2. Используйте команду CD, чтобы сменить текущий каталог командной строки и перейти в каталог, в котором установлены образцы.

    ms160951.note(ru-ru,SQL.90).gifПримечание.
    Чтобы определить каталог, в котором установлены образцы, нажмите кнопку Пуск, укажите пункты Все программы, Microsoft SQL Server, Документация и учебные материалы, а затем выберите пункт Каталог образцов. Если использовался каталог установки по умолчанию, то образцы расположены в каталоге «<системный_диск>:\Program Files\Microsoft SQL Server\100\Samples».
  3. В командной строке выполните следующую команду, чтобы создать файл ключа:

    sn -k SampleKey.snk

    ms160951.note(ru-ru,SQL.90).gifВажно!
    Дополнительные сведения о паре ключей для строгого имени см. в статье по строгим именам и безопасности для платформы .NET Framework в центре разработчиков .NET в MSDN.

Построение образца Array Parameter

  1. Скомпилируйте образец в среде Visual Studio 2005 с использованием предоставляемого решения Visual Studio или программы Microsoft MSBuild, которая включена в пакет .NET Framework SDK 2.0. В командной строке .NET Framework выполните следующую команду:

    msbuild /nologo /verbosity:quiet /property:Configuration=Debug CS\ArrayParameter.sln

  2. Убедитесь, что база данных AdventureWorks установлена.

  3. Если образцы компонента SQL Server Database Engine не установлены в каталог по умолчанию, измените путь в разделе сценария CREATE ASSEMBLY в файле Scripts\InstallCS.sql, чтобы указать место установки образцов.

  4. Если вы не являетесь администратором используемого экземпляра сервера SQL Server, то для завершения установки необходимо, чтобы администратор предоставил разрешение CreateAssembly.

  5. Откройте в среде SQL Server Management Studio файл scripts\installCS.sql или scripts\installVB.sql (в зависимости от типа проекта — Visual C# или Visual Basic). Выполните сценарий, содержащийся в файле, или выполните в окне командной строки команду, подобную следующей:

    sqlcmd -E -I -i Scripts\InstallCS.sql

Выполнение образца

Запуск образца Array Parameter

  1. При помощи команды смены каталога (CD) перейдите из текущей папки в каталог образца ArrayParameter. В командной строке введите следующую команду:

    Scripts\TestCS.cmd

Удаление образца

Удаление образца Array Parameter

  1. В среде Management Studio откройте файл scripts\cleanup.sql. Выполните содержащийся в файле сценарий или выполните в окне командной строки следующую команду:

    sqlcmd -E -I -i Scripts\cleanup.sql

Примечания

Чтобы этот образец работал правильно, в SQL Server 2005 и SQL Server Express должно быть разрешено использование среды CLR.

Образцы предназначены только для обучения. Они не предназначены для использования в рабочей среде и не тестировались в ней. Корпорация Майкрософт не предоставляет техническую поддержку для этих образцов. Образцы приложений и сборок не следует соединять или использовать с рабочей базой данных SQL Server или с сервером отчетов без разрешения системного администратора.

См. также

Задачи

AdventureWorks Cycles CLR Layer

Справка и поддержка

Получение помощи по SQL Server 2005

Журнал изменений

Версия Журнал

5 декабря 2005 г.

Измененное содержимое
  • Изменены инструкции по созданию файла ключа, в том числе его имя и расположение.