问题现象:在SQL SERVER 2000中发现在用的数据库置疑,不能找到该数据库,在系统管理中,选择该帐套的主管身份登录,提示该数据库找不到,如何解决??
解决办法:使用存储过程 sp_detach_db 'pubs', 'true' ,其中'pubs'为数据库名称,断开数据库和SQL的连接(或者打开sql的企业管理器,在该置疑的数据库上点击右键,在所有任务中选择分离数据库,断开连接)。然后查找数据库文件是否存在,如果存在,使用另一个存储过程连接看是否成功 sp_attach_db @dbname = N'pubs', @filename1 = N'c:\mssql7\data\pubs.mdf', @filename2 =
N'c:\mssql7\data\pubs.ldf' (或者打开sql的企业管理器,在数据库上点击右键,在所有任务中选择附加数据库,建立连接),c:\mssql7\data\为数据库所在路径,如果找不到文件或连接不成功,则没有其他办法没,只能一切从头来过。下面是一个存储过程删除用友中没有数据库连接的帐套 use ufsystem DELETE FROM UA_Period WHERE cacc_id = '010' DELETE FROM UA_holdauth WHERE cacc_id = '010' DELETE FROM UA_log WHERE cacc_id = '010' DELETE FROM UA_account_sub WHERE cacc_id =010' DELETE FROM UA_account WHERE cacc_id = '010' ,其中„010‟为帐套号。上面的语句需要在sql的查询分析器中执行。