Как заставить имя схемы dbo? - PullRequest
1 голос
/ 12 марта 2009

Я использую «ПРОЕКТ SQL-СЕРВЕРА» в VS 2008 для создания UDF в C # Затем я использую команду DEPLOY для публикации DLL в MS SQL Server 2005

Все работает хорошо, за исключением того, что все созданные UDF принадлежат мне (как пользователь) Но я хотел сохранить схему dbo (например, dbo.UDF_TEST - не jonny.UDF_TEST)

Есть идеи, как управлять Таром?

Ответы [ 2 ]

1 голос
/ 13 марта 2009

Я нашел другой подход, позволяющий делать все внутри VS.

Я добавил в проект сценарий SQL с именем "postdeployscript.sql":

ОБЪЯВИТЬ @SQL NVARCHAR (200)

SET @SQL = 'изменить схему передачи данных' + CURRENT_USER + '. [UDF_GET_AUDIT_VALUE]'

EXECUTE (@SQL)

GO

Сценарий автоматически выполняется VS во время процесса развертывания и изменяет схемы с текущего пользователя на DBO.

Минусы: вам нужно добавить каждый UDF / USP, который вы вводите вручную

PS: обратите внимание, что вы также можете использовать beforeployscript.sql для выполнения некоторых команд перед развертыванием

1 голос
/ 12 марта 2009

развернуть UDF из учетной записи sysadmin или dbo в базе данных. Вы можете создать dll, а затем вручную развернуть ее, войдя в среду управления dbo в базу данных и выполнив следующие команды:

СОЗДАТЬ МОНТАЖ Геокод ОТ

'C: \ PATH \ YourUDF.dll' WITH

PERMISSION_SET = SAFE

или

  1. Из Visual Studio в Обозреватель решений нажмите на UDF проект (не решение).
  2. Перейти к свойствам.
  3. Нажмите на вкладку базы данных.
  4. Вы можете изменить соединение строка, а также изменить сборку владелец здесь.
...