Pergunta

Eu estou usando "SQL SERVER PROJECT" no VS 2008 para criar UDF em C # Então eu estou usando o comando deploy para publicar DLL no servidor MS SQL 2005

Tudo funciona bem, exceto todas as UDFs criadas são de propriedade de mim (como usuário) Mas eu queria manter dbo esquema (por exemplo: dbo.UDF_TEST - não jonny.UDF_TEST)

Qualquer idéia de como gerenciar thar?

Foi útil?

Solução 2

Eu encontrei uma outra abordagem que permite fazer tudo dentro VS.

Eu adicionei a script de SQL projeto chamado "Postdeployscript.sql":

DECLARE @SQL NVARCHAR (200)

SET @SQL = 'alter esquema transferência dbo' + CURRENT_USER + '[UDF_GET_AUDIT_VALUE]'

Executar (@SQL)

GO

script é executado automaticcally por VS durante o processo de depolyment e muda esquemas de usuário atual para DBO.

Contras: você precisa adicionar cada UDF / USP você ceating manualmente

PS: Por favor, note que você também pode usar Predeployscript.sql para executar algumas commmands antes da implantação

Outras dicas

implantar a UDF de uma conta que é sysadmin, ou dbo no banco de dados. Você pode construir a DLL e, em seguida, manualmente implantá-lo, entrando em estúdio gestão como dbo ao banco de dados e executar estes comandos:

CREATE ASSEMBLY Geocode FROM

'C: \ PATH \ YourUDF.dll' COM

PERMISSION_SET = SAFE

ou

  1. De dentro Visual Studio na Solution Explorer, clique no UDF projeto (não a solução).
  2. Vá para propriedades.
  3. Clique na guia banco de dados.
  4. Você pode alterar a conexão corda, e também alterar a montagem proprietário aqui.
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top