在 MS Access 和 SQL Server 中处理图片

Posted

技术标签:

【中文标题】在 MS Access 和 SQL Server 中处理图片【英文标题】:Working with pictures in MS Access and SQL Server 【发布时间】:2013-05-14 10:59:19 【问题描述】:

具体是怎么做的:

    将图像/图片导入 SQL 数据库 使用 MS Access 表单查看 SQL 数据库中的图片?

我目前在两个数据库之间使用 ODBC 链接完全没有问题,但我很难理解我需要做什么才能实现我想要实现的目标。 我已经尝试过 Google,但还没有找到正确的信息。

【问题讨论】:

【参考方案1】:

从 SQL Server 数据库中获取图片:

为此,您需要 GetChunkAppendChunk 函数。 这是一个教程:How To Read and Write BLOBs Using GetChunk and AppendChunk. 本教程有点过时,但据我所知,这仍然是从 VBA 在数据库中加载/保存图片的最佳方式。 请注意,在 SQL Server 中,您应该使用 varbinary(max) 字段(而不是教程中建议的 image)来存储图片。

在 MS Access 表单中显示图片:

您不能直接从数据库中显示图片。您必须从数据库中加载它(见上文),将其存储在临时文件夹中并从那里显示。

要获取 Windows 的临时文件夹,请使用 Environ("temp") 或 the GetTempPath API function。

要显示图片,您可以将其设置为表单的背景:

Me.Picture = "c:\...\temp\picture.jpg"

...或使用图像控件:

Me.NameOfImageControl.Picture = "c:\...\temp\picture.jpg"

【讨论】:

以上是关于在 MS Access 和 SQL Server 中处理图片的主要内容,如果未能解决你的问题,请参考以下文章

MS Access 和 SQL Server 连接(可信来源与传递登录凭据)

SQL Server、Excel 和 MS Access 中的日期差异

重新定义 MS Access 文件和 SQL Server 之间的数据链接

在 MS Access 中使用 SQL Server Express 引擎

为啥 MS-Access 中的 Teradata 查询比 SQL Server 更快

MS ACCESS, VBA 将外部 MS Access 表导入 SQL server 表