![]() |
Cambiar una SQL Buenos dias, estoy tratando de hacer una sentencia de SQL que me permita cambiar el propietario de los procedimientos almacenados en mi base de datos pero hasta el momento solo he conseguido hacer que la sentencia SQL me construya las sentencias que debo de ejecutar despues. Esta es la sentencia y me gustaria transformarla en algo que se ejecute directamente. DECLARE @oldOwner sysname, @newOwner sysname SELECT @oldOwner = 'ss_420_limpio' , @newOwner = 'ss_42002' select 'EXECUTE sp_changeobjectowner '''+QUOTENAME(a.SPECIFIC_SCHEMA)+'.'+QUOTENAME(a.R OUTINE_NAME)+''','''+@newOwner+'''' from INFORMATION_SCHEMA.ROUTINES a where a.ROUTINE_TYPE = 'procedure' or a.ROUTINE_TYPE = 'function' AND a.SPECIFIC_SCHEMA = @oldOwner AND OBJECTPROPERTY(OBJECT_ID(QUOTENAME(a.SPECIFIC_SCHE MA)+'.'+QUOTENAME(a.ROUTINE_NAME)), 'IsMSShipped') = 0 Esta sentencia me devuelve la siguiente cadena "execute sp_changeobjectowner......" pero lo que busco es que se ejecute en un solo paso esa funcion. Podeis ayudarme Gracias |
Prueba algo como esto. Basicamente se trata de almacenar en una variable los resultados del select para luego ejecutar el contenido de la cadena. Código: DECLARE @sql VarChar(8000) |
Este man es un duro :arriba: |
| La zona horaria es GMT -6. Ahora son las 20:50. |
Desarrollado por vBulletin® Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.