日期:2014-05-17  浏览次数:20506 次

将海量本地文件夹图片导入sql server
下面这个方法我看不太懂啊,如果我有一万张图片,岂不是要写一万条
go
insert photo_insert values(8009,0x) -- image字段必须的,且不是null
insert photo_insert values(8010,0x) -- image字段必须的,且不是null
go了???
我就想把c;\images 中的image00000.png--image10000.png名字和图片导入到表images(ID,IMAGES)中,谁能给我说下下面的代码怎么改啊,或者其他具体办法~~c#我也没学啊
--1、建立存储过程
CREATE PROCEDURE sp_textcopy (
  @srvname    varchar (30),
  @login      varchar (30),
  @password    varchar (30),
  @dbname      varchar (30),
  @tbname      varchar (30),
  @colname    varchar (30),
  @filename    varchar (50),
  @whereclause varchar (40),
  @direction  char(1))
AS
DECLARE @exec_str varchar (255)
SELECT @exec_str =
        'textcopy /S ' + @srvname +
        ' /U ' + @login +
        ' /P ' + @password +
        ' /D ' + @dbname +
        ' /T ' + @tbname +
        ' /C ' + @colname +
        ' /W "' + @whereclause +
        '" /F ' + @filename +
        ' /' + @direction
EXEC master..xp_cmdshell @exec_str


--2、建表和初始化数据(jobnumber字段要为文本型)
create table photo_insert (jobnumber varchar(20),photo image)
go
insert photo_insert values(8009,0x) -- image字段必须的,且不是null
insert photo_insert values(8010,0x) -- image字段必须的,且不是null
go

--xp_cmdshell功能默认是关闭的,需开启
EXEC sp_configure 'show advanced options', 1;RECONFIGURE;
EXEC sp_configure 'xp_cmdshell', 1;RECONFIGURE;


--3、读入
sp_textcopy 'LSQ','sa','data20101203','master','photo_insert','photo','e:\beauty01.jpg','where jobnumber=8009','I'  --注意条件是 工号=8009
go

--4、读出成文件
sp_textcopy 'LSQ','sa','data20101203','master','photo_insert','photo','e:\beauty001.jpg','where jobnumber=8009','O' --注意条件是 工号=8009
go