从虚拟主机下载下来的sql数据库怎么用?
从虚拟主机下载下来的sqlserver数据库是一个备份.bak文件,当备份还原到数据库的时候每张表和存储过程都一个号码(虚拟主机数据库名)和表名,如表(a09171617...
从虚拟主机下载下来的sql server数据库是一个备份.bak文件,当备份还原到数据库的时候每张表和存储过程都一个号码(虚拟主机数据库名)和表名,如表(a0917161752.user),但想用重名把a0917161752去掉也不行,这个应该怎么改?
展开
3个回答
展开全部
可以批量修改架构名
SQL Server2005可以使用系统存储过程sp_changeobjectowner更改数据库对象的所有者。
sp_changeobjectowner '对象名(包括架构名)','新架构名'
批量修改请用:
方法一:使用游标
declare @name sysname
declare csr1 cursor
for select TABLE_NAME from INFORMATION_SCHEMA.TABLES
open csr1
FETCH NEXT FROM csr1 INTO @name
while (@@FETCH_STATUS=0)
BEGIN
SET @name='原架构名.'+@name
EXEC SP_ChangeObjectOwner @name, '新架构名'
fetch next from csr1 into @name
END
CLOSE csr1
DEALLOCATE csr1
方法二:使用系统存储过程sp_MSforeachtable
EXEC sp_MSforeachtable @command1="EXEC SP_ChangeObjectOwner '?','新架构名'"
SQL Server2005可以使用系统存储过程sp_changeobjectowner更改数据库对象的所有者。
sp_changeobjectowner '对象名(包括架构名)','新架构名'
批量修改请用:
方法一:使用游标
declare @name sysname
declare csr1 cursor
for select TABLE_NAME from INFORMATION_SCHEMA.TABLES
open csr1
FETCH NEXT FROM csr1 INTO @name
while (@@FETCH_STATUS=0)
BEGIN
SET @name='原架构名.'+@name
EXEC SP_ChangeObjectOwner @name, '新架构名'
fetch next from csr1 into @name
END
CLOSE csr1
DEALLOCATE csr1
方法二:使用系统存储过程sp_MSforeachtable
EXEC sp_MSforeachtable @command1="EXEC SP_ChangeObjectOwner '?','新架构名'"
展开全部
你可以把你的数据库里也添加上这个a0917161752的登录名,然后把数据库还原一下。
追问
架构名这些都不用改了吗 ,数据访问的时候也是加上这个a0917161752?存储过程也是..?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
导入 还原备份就可以
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
更多回答(1)
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询