Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/34.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net 向SQL表插入1-2MB图像的最佳方法_Asp.net_Sql_.net_Vb.net_Crystal Reports - Fatal编程技术网

Asp.net 向SQL表插入1-2MB图像的最佳方法

Asp.net 向SQL表插入1-2MB图像的最佳方法,asp.net,sql,.net,vb.net,crystal-reports,Asp.net,Sql,.net,Vb.net,Crystal Reports,我试图找到最好的方法,插入大小为1-2MB的图像到SQL中,并保持图片的最佳分辨率和原始图像。问题是,当我在Crystal Report中查看图像时,它会改变报告的解决方案(即使我选中了“保留图像质量”),并且在许多情况下,它会拉伸图像大小并使图像更宽。请给出建议。如果您试图保持图像的完整性,并且您可以访问文件系统,我能想到的最好方法是将文件复制到某个目录中,然后在数据库中只存储路径(以及您认为合适的任何其他属性)。然后您就可以完全控制这些图像的使用。(您还可以减小数据库大小) 唯一需要注意的是

我试图找到最好的方法,插入大小为1-2MB的图像到SQL中,并保持图片的最佳分辨率和原始图像。问题是,当我在Crystal Report中查看图像时,它会改变报告的解决方案(即使我选中了“保留图像质量”),并且在许多情况下,它会拉伸图像大小并使图像更宽。请给出建议。

如果您试图保持图像的完整性,并且您可以访问文件系统,我能想到的最好方法是将文件复制到某个目录中,然后在数据库中只存储路径(以及您认为合适的任何其他属性)。然后您就可以完全控制这些图像的使用。(您还可以减小数据库大小)


唯一需要注意的是确保数据库不保留悬空文件路径(在删除图像时清除数据库行)。

我想您应该将图像存储为blob字段,因为它们非常小。您也可以使用类似于
FILESTREAM
的东西,这有其优点和缺点。但从应用程序的角度来看,这并没有什么区别。你在问两个问题。。。您想知道如何存储图像,还是难以在输出中保持存储图像的纵横比?你在问什么?如果是后者,您能否演示和展示您正在使用的代码/设置?谢谢Dave。我无法在Crystal Report(版本9)中维护存储图像的纵横比。我使用SQL表中的图像类型插入图像。将asp.net中的图像(使用vb)插入SQL字段的最佳方法是什么?我应该使用什么数据类型?(考虑到我需要保持图像的原始大小、分辨率等)是的,但我不知道如何在Crystal 9中做到这一点!