--这里质疑的数据库名举例为:'jmds2016'
--2000
USE MASTER
GO
SP_CONFIGURE 'ALLOW UPDATES',1 RECONFIGURE WITH OVERRIDE
GO
UPDATE SYSDATABASES SET STATUS =32768 WHERE NAME='jmds2016'
Go
sp_dboption 'jmds2016', 'single user', 'true'
Go
update sysdatabases set status =26 where name='jmds2016'
Go
sp_configure 'allow updates', 0 reconfigure with override
Go
sp_dboption 'jmds2016', 'single user', 'false'
Go
--dbcc rebuild_log('jmds2016','D:\Database\jmds2016_log.ldf')
GO
DBCC CHECKDB('jmds2016',REPAIR_ALLOW_DATA_LOSS)
GO
DBCC CHECKDB('jmds2016',REPAIR_REBUILD)
GO
sp_dboption 'jmds2016','dbo use only','true'
go
--2008
alter database jmds2016set emergency
alter database jmds2016set single_user
dbcc checkdb('jmds2016',REPAIR_ALLOW_DATA_LOSS)
dbcc checkdb('jmds2016',REPAIR_REBUILD)
alter database jmds2016 set multi_user
--导出数据到tset1.txt,并指定本地数据库的用户名和密码
--这里需要注意:指定的数据库必须是完全限定名。
EXEC master..xp_cmdshell 'BCP "select * from testad.dbo.Test" queryout d:\tset1.txt -c -U"sa" -P"sasasa"'
--导出数据到tset2.xls,使用-T信任连接
--通过-F 10 -L 13 指定导出的起始行和结束行数
EXEC master..xp_cmdshell 'BCP "select * from testad.dbo.Test" queryout d:\test2.xls -c -F 10 -L 13 -T"'
--导入
bcp AdventureWorks.Sales.Currency2 in c:\Currency.dat -T -c