社区
MS-SQL Server
帖子详情
怎样在数据库后台拷贝文件?(成功300分送上)
huangjianyou
2005-01-12 11:34:42
在数据服务器里有一个文件夹“ABC”和一个文件夹“DEF”,“DEF”是共享的,“ABC”是不共享的。
现在我想做的是:在其它机里访问服务器,将要拷贝的文件(有几个或很多)放在“DEF”里,然后通过SQL数据库的存储过程将“DEF”里的文件拷贝到“ABC”。这步我已成功拷贝了。但将“ABC”拷贝回“DEF”就不行了,我想可能是因为“ABC”是不共享的。不知为什么?或者还有什么方法请给出思路?谢了。
...全文
334
32
打赏
收藏
怎样在数据库后台拷贝文件?(成功300分送上)
在数据服务器里有一个文件夹“ABC”和一个文件夹“DEF”,“DEF”是共享的,“ABC”是不共享的。 现在我想做的是:在其它机里访问服务器,将要拷贝的文件(有几个或很多)放在“DEF”里,然后通过SQL数据库的存储过程将“DEF”里的文件拷贝到“ABC”。这步我已成功拷贝了。但将“ABC”拷贝回“DEF”就不行了,我想可能是因为“ABC”是不共享的。不知为什么?或者还有什么方法请给出思路?谢了。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
32 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
huangjianyou
2005-01-24
打赏
举报
回复
可能真不行的了。结了算了。
:(
Softlee81307
2005-01-15
打赏
举报
回复
Declare @s varchar(200)
set @s='copy c:\abc\*.* d:\def\'
exec master.. xp_cmdshell 'net share b=c:\abc'
exec master.. xp_cmdshell 'net share d=d:\def'
exec master..xp_cmdshell @s
exec master.. xp_cmdshell 'net share c:\abc /delete'
exec master.. xp_cmdshell 'net share d:\def /delete'
Softlee81307
2005-01-15
打赏
举报
回复
Declare @s varchar(200)
set @s='copy c:\abc\*.* d:\def\'
exec master..xp_cmdshell @s
huangjianyou
2005-01-15
打赏
举报
回复
真的不行啊?三百分送不出了?
huangjianyou
2005-01-14
打赏
举报
回复
//这个是针对ntfs分区的,你可以直接选择"完全控制"
"ABC"不共享的,如果共享是可以,但由一个共享的“ABC”复制到另一个共享的“DEF”没意义的。
//找不到 SQLSERVERAGENT ? 怪了,这个是代理服务正常安装sql 2000的话,应该是有的
撞鬼了,真的没有。
//你是怎么拷贝的,都可以不共享啊:
exec master..xp_cmdshell 'copy c:\abc\*.* d:\def\'
我试过,不行的。如果ABC不共享而DEF共享,那么在其它机执行就可以从DEF剪切到ABC,但不能从ABC剪切回DEF。
huangjianyou
2005-01-13
打赏
举报
回复
//2.设置上面创建的用户对共享目录(DEF)的所有权限,并且要求这个用户对于不共享的目录(ABC)要有复制文件的权限
这个不会设,怎样设置呢?
//同样的方法设置 SQLSERVERAGENT
我在服务里找不到SQLSERVERAGENT?
要再次麻烦老大了。
long_205
2005-01-13
打赏
举报
回复
你是怎么拷贝的,都可以不共享啊:
exec master..xp_cmdshell 'copy c:\abc\*.* d:\def\'
zjcxc
元老
2005-01-13
打赏
举报
回复
//2.设置上面创建的用户对共享目录(DEF)的所有权限,并且要求这个用户对于不共享的目录(ABC)要有复制文件的权限
这个是针对ntfs分区的,你可以直接选择"完全控制"
找不到 SQLSERVERAGENT ? 怪了,这个是代理服务正常安装sql 2000的话,应该是有的
hglhyy
2005-01-12
打赏
举报
回复
你把权限重新设定一次,再试试看!(可根据你登陆SQL的用户来考虑)
huangjianyou
2005-01-12
打赏
举报
回复
//可能是连接数据库的用户没有该文件夹操作的权限,自己检查吧
该文件夹不共享就没该文件夹的权限了。怎样查呢?
pbsql
2005-01-12
打赏
举报
回复
可能是连接数据库的用户没有该文件夹操作的权限,自己检查吧
huangjianyou
2005-01-12
打赏
举报
回复
哦,传参数行了,我找出原因了。程序在服务器行的,但放到其它机运行就不行。是不是“ABC”没共享的原因?共享是行的,我试过了,但不共享就不行了。如果共享就没意义了,用户一样可以直接动文件,那拷贝来拷贝去就没意义了。
pbsql
2005-01-12
打赏
举报
回复
既然直接在查询分析器里执行可以那就没问题了
传参数就不可以了,帖出你的代码来吧
huangjianyou
2005-01-12
打赏
举报
回复
直接在查询分析器里执行可以,但传参数就不可以了,找不到原因。
上传是指:局域网内的其它机器传到服务器的“ABC”
下载是指:从“ABC”拷贝回“DEF”。
现在我就是想共享“DEF”由用户放临时的文件,再上传到“ABC”,这步我已做成功了。但不想共享“ABC”,因为不想用户乱动“ABC”里的文件。从“ABC”拷贝回“DEF”就出错了,在服务器台机是可以的,但在其它机就不行了。
pbsql
2005-01-12
打赏
举报
回复
你不是说两文件夹都在数据服务器里吗?怎么又成上传、下载了?
若在不同的机器里,当然得共享才行
pbsql
2005-01-12
打赏
举报
回复
直接在查询分析器执行:
exec master..xp_cmdshell 'copy c:\abc\*.* d:\def\'
若不可以再根据提示找原因
huangjianyou
2005-01-12
打赏
举报
回复
//同一台机器上应该可以啊,除非帐号权限有限制
现在是不可能在同一机器上啊,同一机器上我都做出来了。但一拷贝程序到别的机上传可以,但下载就不可以了。
//你是怎么拷贝的,都可以不共享啊:
exec master..xp_cmdshell 'copy c:\abc\*.* d:\def\'
xp_cmdshell我试过,但没试成功,麻烦那位帮写一个储存过程出来吧。
补充一点,不可以在服务器上运行程序,一定要在其它机里调用服务器里的存储过程。
huangjianyou
2005-01-12
打赏
举报
回复
老大,其它机是看不到“ABC”文件夹的。
huangjianyou
2005-01-12
打赏
举报
回复
//你的sql服务的启动用户是什么? 具有复制abc文件夹下文件的权限么?
是sa吧。
zjcxc
元老
2005-01-12
打赏
举报
回复
你的sql服务的启动用户是什么? 具有复制abc文件夹下文件的权限么?
加载更多回复(12)
100 道 Linux 笔试题笔记(四)71-100(部分)
桌面系统的用户无需建立他们自己的/etc/passwd,他们只简单的使用维护在NIS服务器的
文件
即可。而命令ld.so相应的配置
文件
是/etc/ld.so.conf,这是个文本
文件
,里面可以增加修改so库的搜索路径(与windows下是有区别的,windows下动态库是先搜索当前目录,再去环境变量PATH中搜索,再到系统路径下去搜索),当然也可以通过定义一个$LD_LIBRARY_PATH的环境变量来指定运行时的搜索路径。通知链表只能够在内核的子系统之间使用,而不能够在内核与用户空间之间进行事件的通知。
Linux 的常用系统及网络命令
(转载自http://blog.chinaunix.net/uid-8031155-id-2518955.html) Linux下常用命令收集整理 Linux 的常用网络命令 计算机网络的主要优点是能够实现资源和信息的共享,并且用户可以远程访问信息。Linux提供了一组强有力的网络命令来为用户服务,这些工具能够帮助用户登录到远程计算机上、传输
文件
和执行远程命令等
linux常见命令
-->2004年10月04日用wget下载整个网站的方法wget -r -p -np -k http://202.38.75.11/~jbhuang/blog/kingpaul @ 06:40 PM 发表于 linux | 编辑 | 留言 (0) | TrackBack (0) -->2004年09月23日Linux下配置DHCP服务
C#基础教程-c#实例教程,适合初学者
C#基础教程-c#实例教程,适合初学者。 第一章 C#语言基础 本章介绍C#语言的基础知识,希望具有C语言的读者能够基本掌握C#语言,并以此为基础,能够进一步学习用C#语言编写window应用程序和Web应用程序。当然仅靠一章的内容就完全掌握C#语言是不可能的,如需进一步学习C#语言,还需要认真阅读有关C#语言的专著。 1.1 C#语言特点 Microsoft.NET(以下简称.NET)框...
Linux指令大全
Liunx常用命令。cat cd chmod chown cp cut 名称:cat 使用权限:所有使用者 使用方式:cat [-AbeEnstTuv] [--help] [--version] fileName 说明:把档案串连接后传到基本输出(萤幕或加 > fileName 到另一个档案) 参数: -n 或 --number 由 1 开始对所有输出的行数编号 -b 或 --number-non
MS-SQL Server
34,577
社区成员
254,588
社区内容
发帖
与我相关
我的任务
MS-SQL Server
MS-SQL Server相关内容讨论专区
复制链接
扫一扫
分享
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章