有个项目图片要存到SQL SERVER数据库中,由于特殊原因不能存图片路径,只能用image字段存储图片,但是这样又会导致数据库太大,请教各位高手有没有好的解决办法,存在image字段中的二进制图片能压缩吗?

解决方案 »

  1.   

    压缩要看什么图像了,jpg已经是压缩格式了,压也压不出水了
    当然可以考虑,把上传的图像提交到服务器的一个指定目录,然后数据库就保存路径,这就会影响以后的数据移植
    各有各的好,各有各的不好,综合考虑吧
      

  2.   


    image  類型就別壓了。BMP還行。
      

  3.   

    二进制图片压缩也没有多少效果。保存二进制数据到XMl里再获取就是。
      

  4.   

    存入数据库前先调整jpg图像压缩率,
    照片一般可以调到65%也不会有太大失真,
    图形最好不要低于80%,--> 这样又会导致数据库太大
    大小就是由你存入的内容决定的,
    存个文件路径和存图像数据当然是有很大区别的,
    要看系统的具体情况来选择我个人比较倾向直接存入内容,
    因为现在的硬件提高比较快,
    相对管理外部文件连接的代价来说,
    增强硬件性能是比较合算的当然在读写数据的时候要尽量设计好,
    避免频繁读写大量图像,
    如有必要,设计一个好的索引和cache算法减轻数据库压力
      

  5.   

    jpg压缩貌似不能改变二进制的大小,存进的不管是bmp还是jpg二进制都是一样大的缩小图片的分辨率到是可以减少二进制所占空间,但是失真又比较厉害。这个项目一个图片就有300K,大概要存100W张,暂不说查询速度的问题,就是硬盘也难承受啊。所以想问下大家有没好的解决办法。
      

  6.   

    建议使用SQL 08的FILE STREAM特性
    性能、管理上OK