项目中,我们原先使用的为默认dbo架构,因系统要部署到阿里云环境,阿里云默认sqlserver只能使用dbo架构,
无奈下我们只能将数据库转到dbo架构,可使用下面方式转换架构。
SELECT 'ALTER SCHEMA dbo TRANSFER ' + s.Name + '.' + p.Name
FROM sys.tables p INNER JOIN sys.Schemas s on p.schema_id = s.schema_id
WHERE s.Name ='(数据库名称)'
SELECT 'ALTER SCHEMA dbo TRANSFER ' + s.Name + '.' + p.Name
FROM sys.Procedures p INNER JOIN sys.Schemas s on p.schema_id = s.schema_id
WHERE s.Name ='(数据库名称)'
SELECT 'ALTER SCHEMA dbo TRANSFER ' + s.Name + '.' + p.Name
FROM sys.views p INNER JOIN sys.Schemas s on p.schema_id = s.schema_id
WHERE s.Name ='(数据库名称)'
SELECT * FROM sys.all_objects
WHERE
type_desc in('SQL_TABLE_VALUED_FUNCTION','SQL_SCALAR_FUNCTION');