SQLServer批量倒入目录文件 收藏


可以用扩展存储过程xp_dirtree获取文件列表,用openrowset倒入数据到二进制字段。
openrowset的用法可以参考msdn
http://technet.microsoft.com/zh-cn/library/ms190312.aspx

如果文件很多,建议还是用程序倒入了


if (object_id ('t_bulkResult' ) is   not   null )
drop table t_bulkResult

create table t_bulkResult (name varchar (1000 ), data image )
go

declare @d varchar (1000 )
set @d = 'c:/test/'
create table #tb (fName varchar (1000 ), d int , f int )
insert into #tb exec xp_dirtree @d , 1 , 1
delete from #tb where f <> 1

declare @ sql nvarchar (max )
select @ sql = isnull (@ sql , '' )+ 'insert into t_bulkResult select ''' +@d + fname + ''',* from openrowset(bulk N''' +@d + fName + ''', SINGLE_BLOB) b
'
from #tb a

exec sp_executesql @ sql

drop table #tb

select * from t_bulkResult

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
批量恢复多个BAK文件,可以使用SQL Server Management Studio(SSMS)或Transact-SQL(T-SQL)命令来完成。 1. 使用SSMS批量恢复BAK文件: - 打开SSMS并连接到SQL Server实例。 - 在对象资源管理器中,右键单击“数据库”文件夹,选择“还原数据库”选项。 - 在“还原数据库”对话框中,选择“设备”选项卡。 - 点击“添加”按钮并浏览到包含BAK文件文件夹。 - 选中所有需要恢复的BAK文件,点击“确定”按钮。 - 在“还原数据库”对话框中,选择需要还原的数据库和恢复选项。可以使用默认选项或根据需要进行自定义设置。 - 点击“确定”按钮开始恢复过程。 2. 使用T-SQL命令批量恢复BAK文件: - 打开SQL Server Management Studio并连接到SQL Server实例。 - 打开新的查询窗口并输入以下命令: ``` RESTORE DATABASE [DatabaseName] FROM DISK = 'FilePath1' WITH REPLACE, RECOVERY; RESTORE DATABASE [DatabaseName] FROM DISK = 'FilePath2' WITH REPLACE, RECOVERY; RESTORE DATABASE [DatabaseName] FROM DISK = 'FilePath3' WITH REPLACE, RECOVERY; ``` 其中,[DatabaseName]是需要还原的数据库名称,FilePath1、FilePath2、FilePath3是需要恢复的BAK文件路径。 - 执行命令以开始恢复过程。 注意事项: - 在恢复数据库之前,请确保已经备份了目标数据库并且目标数据库不存在。 - 如果需要恢复到不同的数据库名称,请在命令或对话框中指定新的数据库名称。 - 恢复过程可能需要一些时间,具体时间取决于BAK文件的大小和恢复选项。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值