Aquí podría ser tu PUBLICIDAD


Cómo forzar el nombre del esquema dbo?

votos
1

Estoy usando SQL SERVER PROJECT en VS 2008 para crear UDF en C # Luego estoy usando el comando DEPLOY para publicar DLL en MS SQL Server 2005

Todo funciona bien, excepto que todas las UDF creadas son propiedad de mí (como usuario). Pero quería mantener el esquema dbo (por ejemplo: dbo.UDF_TEST - not jonny.UDF_TEST)

¿Alguna idea de cómo administrar thar?

Publicado el 12/03/2009 a las 16:23
fuente por usuario Maciej
En otros idiomas...        العربية       

2 respuestas

votos
1

He encontrado otro enfoque que permite hacer todo dentro de VS.

He agregado al script SQL del proyecto llamado "postdeployscript.sql":

DECLARAR @SQL NVARCHAR (200)

SET @SQL = 'alterar la transferencia de dbo de esquema' + CURRENT_USER + '. [UDF_GET_AUDIT_VALUE]'

EJECUTAR (@SQL)

IR

el script se ejecuta de forma automática por VS durante el proceso de depuración y cambia los esquemas del usuario actual a DBO.

Contras: necesitas agregar cada UDF / USP que estás cerrando manualmente

PD: Tenga en cuenta que también puede usar predeployscript.sql para ejecutar algunos comandos antes de la implementación

Respondida el 13/03/2009 a las 12:45
fuente por usuario Maciej


Aquí podría ser tu PUBLICIDAD


votos
1

Implemente la UDF desde una cuenta que sea sysadmin o dbo en la base de datos. Puede construir el dll y luego implementarlo manualmente iniciando sesión en el estudio de administración como dbo a la base de datos y ejecutando estos comandos:

CREAR ENSAMBLE Geocodificar DESDE

'C: \ PATH \ YourUDF.dll' CON

PERMISSION_SET = SAFE

o

  1. Desde Visual Studio en el explorador de soluciones, haga clic en el proyecto UDF (no en la solución).
  2. Ir a propiedades.
  3. Haga clic en la pestaña de la base de datos.
  4. Puede cambiar la cadena de conexión y también cambiar el propietario del ensamblaje aquí.
Respondida el 12/03/2009 a las 04:29
fuente por usuario Nick Kavadias