差不多吧,网上有很多现成的例子呀,比如phpad,一个广告管理的系统,他全部把图片存入的数据库里面。

解决方案 »

  1.   

    http://expert.csdn.net/Expert/FAQ/FAQ_Index.asp?id=23275
    PHP在MySQL中存贮图片
      

  2.   

    请问啥是"BLOB字段",因为我在用将sql server的数据导入到mysql中时报错说:
    在目的的行为1处出错,不支持基于BLOB值的插入或更新的查询.
    应怎样来纠正呢?
      

  3.   

    我在VB里面使用SQL语句,插入图片后就读不出来!不知道为什么。比如我插入一个GIF图片,它只能读出几个字符,我查了以下,反应象我在ACCSEE里面试图用备注类型存储图片一样。所以我很怀疑,MYSQL是不是真正的支持二进制数据流的存储?
    备注:我使用ODBC连接的远程数据库
    请各位大侠帮忙啊
      

  4.   

    没问题啊,在VFP+MYODBC测试过.
    不但可以存储在数据库里,
    而且可以存储在文件系统中(简直和FTP一样):
    下载可以用SELECT LOAD_FILE(FILENAME)
    上载可以用INSERT INTO 临时表, 再SELECT INTO 文件
    不过你要有FILE PRIVILEGES.
      

  5.   

    用VB就是不行,在VB里面只能用byte类型的数组表示二进制大对象,我用SQL语句插,结果数组插不进去。我使用RS的filed.appenchunk插进去了,但是使用select语句取的时候,rs.filed.values只有几个几个字节,不知道怎么回事,郁闷啊,要是一个长字符串到是能顺利地插进去
    另外可以给我讲讲select load_file(filename)的用法吗?我好象没有发现MYSQL里面有这样的查询语句。
    谢谢您了
      

  6.   

    mysql> UPDATE tbl_name
               SET blob_column=LOAD_FILE("/tmp/picture")
               WHERE id=1;运行 LOAD_FILE 的要求:
    1:
    文件必须在服务器上,
    2:
    引用时必须用完全路径
    3:
    你必须有 FILE 权限
    4:
    读取的文件大小必须小于 max_allowed_packet
      

  7.   

    这个方法我用过了,插入的效果和使用filed.appenchunk差不多,但是用select语句读的时候,还是不行:(
      

  8.   

    是使用select语句取的时候,rs.filed.values只有几个几个字节你可见字符为几个字节吧,
    你再仔细查查,
      

  9.   

    MySQL-Front v2.5 版对于查看 Blob 类型数据不错的,
    你可以试试用它来查看数据库中的数据是否正确
      

  10.   

    shuixin13(犬犬(心帆)) 说的对,
    比如blob里有\0字符,
    在rs.field.values里应该产生截断,使后面的数据都不可见吧。
    另外,shuixin13(犬犬(心帆)),我在上个贴子又问到一个问题,
    用mysql api取出来的好象是存在字串数组里,
    而C的字串把\0当作结束符号啊,
    这样难道不会丢失数据吗?
    http://expert.csdn.net/Expert/FAQ/FAQ_Index.asp?id=23275里的代码好象也应该有这样的问题?
      

  11.   

    谢谢心帆
      确实是可见字符只有几个字符,我已经查过了。现在怎么办?我应该把数据存在哪里才行。在VB中怎么使用MY sql的API呀,请诸位多多赐教,非常非常感谢。
      

  12.   

    cosy(天意) 
     chsegang(世刚)
    要注意它可不是字符串呀,
    可以当做一个数据流来处理,
      

  13.   

    可是我想将其转化为std::string的字符串啊,
    不知道如何操作才能避免丢失。
    想用memset,可是mysql api好象不能直接获得blob数据的长度?