最近服务器升级,我写了个升级程序,将数据从旧的数据表中迁移到新的数据表中,因为中间发生了数据表的合并和更改,所以不能采用导入的方式。我采取的方式是读取数据表中的每一条数据,然后插入到新的表中。但是在读取到image类型的数据时,插不进去,提示:
Microsoft VBScript 运行时错误 错误 '800a000d' 类型不匹配 代码是这样的:sql="insert into [User](AwardList,LetterName,Photo,EduLevelTypeID) values('"&rs("AwardList")&"','"&rs("LetterName")&"',"&rs("Picture1")&","&rs("EduLevelTypeID")&")"其中rs("Picture1")是取以前的表中的数据,新表对应的是Photo,现在就是这个问题不好解决,请问正确的SQL语句该怎么写呢?

解决方案 »

  1.   

    http://topic.csdn.net/t/20060822/09/4966011.html
      

  2.   

    我看了你的,但是我这边不仅仅是插入image,还有其他的东西,是不是可以通过存储过程一下搞定呢
      

  3.   

    那SQLSERVER是怎么可以导入这样的数据呢?它是怎么实现的呢?
      

  4.   

    各位,我找到了一个存贮过程,可以实现我的要求:
    http://blog.csdn.net/yugang1219/archive/2006/09/07/1191370.aspx。我准备先读出原来表中的一条记录,存到硬盘,在从硬盘读入,写入到新数据库中,现在的问题是:在这个存储过程里面有一个@whereclause变量,使用的情况是where 编号=2,而我这里编号是个变量,我想只传个数字进来,而不是要传入“where 编号=2”,请问这个存储过程怎么修改下?