小问题:取文件名!!!!

sheepcyk 2003-05-02 02:44:46
我想得到备份文件的数据文件名和日志文件名。
用RESTORE FILELISTONLY FROM DISK='...\.*.BAK'
可以得到Logicalname,但我不知道怎么把它取出来
...全文
31 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
mjhnet 2003-05-04
  • 打赏
  • 举报
回复
你可以再赋变量从#t中把字段logicalname取出啊

select @logicalname = logicalname from #t where type = 'D'

select @logicalname = logicalname from #t where type = 'L'

多个数据和日志文件的话就请用cursor啦。
ldcr520 2003-05-04
  • 打赏
  • 举报
回复
学习
erigido 2003-05-02
  • 打赏
  • 举报
回复
没看懂,先收藏。说不定以后用的上
sheepcyk 2003-05-02
  • 打赏
  • 举报
回复
P_GetBakPath '备份文件名'的结果和用 RESTORE FILELISTONLY FROM DISK='...\.*.BAK'结果一样,我的意思是把Logicalname保存到一个变量中,好在程序中使用它。如用#t的话我无法取出Logicalname
愉快的登山者 2003-05-02
  • 打赏
  • 举报
回复
楼上的方法可行!
pengdali 2003-05-02
  • 打赏
  • 举报
回复
create proc p_GetBakPath @file nvarchar(200) as
create table #t(logicalname nvarchar(200),
physicalname nvarchar(500),
type varchar(10),
filegroupname varchar(20),
size bigint,
maxsize bigint)
insert into #t exec('RESTORE FILELISTONLY FROM DISK = N''' + @file + '''')
select * from #t

go

--调用:
P_GetBakPath '备份文件名'

22,210

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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