数据库挂接的问题

wzj1321 2004-04-04 12:59:24
我用SQL7.0里边有2000个数据库,其中有500多个已经对应用程序暂时没有用。想把它们先从数据库里去除,但不删除,因为以后还有可能挂接上去。这500个数据库有一定的编码规则,请问我该如何做个循环去除,又如何再挂接上去。我知道挂接可以用存储过程 sp_attach_db.而且如果从7.0去除能否直接挂接到SQL2000
...全文
152 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
zjcxc 2004-04-04
  • 打赏
  • 举报
回复
--判断某个文件是否存在

declare @file varchar(1000)
set @file='c:\boot.ini'

create table #tb(a bit,b bit,c bit)
insert into #tb exec master..xp_fileexist @file
if exists(select 1 from #tb where a=1)
print '有'
else
print '没有'
drop table #tb
wzj1321 2004-04-04
  • 打赏
  • 举报
回复
我存储数据文件也有规律可循
请问如何批量附加回来的时候判断是否存在该数据文件???
zjcxc 2004-04-04
  • 打赏
  • 举报
回复
备份数据文件,然后按下面的步骤处理:

1.新建一个同名的数据库

2.再停掉sql server(注意不要分离数据库)

3.用原数据库的数据文件覆盖掉这个新建的数据库

4.再重启sql server

5.此时打开企业管理器时会出现置疑,先不管,执行下面的语句(注意修改其中的数据库名)

6.完成后一般就可以访问数据库中的数据了,这时,数据库本身一般还要问题,解决办法是,利用
数据库的脚本创建一个新的数据库,并将数据导进去就行了.



USE MASTER
GO

SP_CONFIGURE 'ALLOW UPDATES',1 RECONFIGURE WITH OVERRIDE
GO

UPDATE SYSDATABASES SET STATUS =32768 WHERE NAME='置疑的数据库名'
Go

sp_dboption '置疑的数据库名', 'single user', 'true'
Go

DBCC CHECKDB('置疑的数据库名')
Go

update sysdatabases set status =28 where name='置疑的数据库名'
Go

sp_configure 'allow updates', 0 reconfigure with override
Go

sp_dboption '置疑的数据库名', 'single user', 'false'
Go
wzj1321 2004-04-04
  • 打赏
  • 举报
回复
我照你的方法分离了数据库,附加回来的时候一个数据库不能附加了
错误提示“ 错误: 9004,严重度: 21,状态: 1”
我该怎么办呢?
zjcxc 2004-04-04
  • 打赏
  • 举报
回复
--示例,移除所有以db_开头的数据库
use master
go

declare @dbname sysname
declare tb cursor local for select name from sysdatabases where name like 'db_%'
open tb
fetch next from tb into @dbname
while @@fetch_status=0
begin
exec('sp_detach_db '''+@dbname+'''')
fetch next from tb into @dbname
end
close tb
deallocate tb
zjcxc 2004-04-04
  • 打赏
  • 举报
回复
SQL7.0的数据文件可以挂接到sql20000中

但一但挂接到sql2000,就不能再挂回7.0
lynx286 2004-04-04
  • 打赏
  • 举报
回复
将 SQL Server 7.0 数据库附加到 SQL Server 2000 上会自动将 SQL Server 7.0 数据库升级到 SQL Server 2000 数据库,而且这个数据库将不能在 SQL Server 7.0 安装中使用。

27,580

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 应用实例
社区管理员
  • 应用实例社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧