本帖最后由 salecn 于 2010-09-27 11:31:36 编辑

解决方案 »

  1.   

    没看明白 是想更新照片文件名的地址,还是想把照片copy到xsphoto目录下?
      

  2.   

    如果是完全对应的关系...那直接copy不就得了...?
    copy d:\photo d:\xsphoto
    如果你一定要在sqlserver里完成
    EXEC master..xp_cmdshell 'copy d:\photo d:\xsphoto'
      

  3.   


    想把表中有记录的照片文件名 把照片copy到xsphoto
      

  4.   


    使用master..xp_cmdshell直接改变图片的物理路径得了
      

  5.   

    select 'copy d:\photo\'+照片文件名 + ' d:\xsphoto' from table_name
      

  6.   

    复制结果集,cmd 粘贴 运行一次性的东西,还写程序啊
      

  7.   

    use test
    go
    if object_id('test.dbo.tb') is not null drop table tb
    -- 创建数据表
    create table tb
    (
    学号 char(10),
    姓名 char(8),
    照片文件名 varchar(30)
    )
    go
    --插入测试数据
    insert into tb select '2a0010005','张三','20010005.jpg'
    union all select '20010006','李四','20010006.jpg'
    union all select '20010007','王五','20010007.jpg'
    union all select '20010008','陈六','20010008.jpg'
    go
    --代码实现declare @str varchar(4000)
    select @str=isnull(@str+' ','')+'exec master..xp_cmdshell ''move d:\photo\'+rtrim(照片文件名)+' d:\xsphoto''' from tb
    exec(@str)print @str    --exec master..xp_cmdshell 'move d:\photo\20010005.jpg d:\xsphoto' exec master..xp_cmdshell 'move d:\photo\20010006.jpg d:\xsphoto' exec master..xp_cmdshell 'move d:\photo\20010007.jpg d:\xsphoto' exec master..xp_cmdshell 'move d:\photo\20010008.jpg d:\xsphoto'