Display Database Image using MS SQL Server 2

系统 1662 0

原文  Display Database Image using MS SQL Server 2008 Reporting Services

With the new release of  MS SQL Server 2008 Reporting Services  has introduced a new feature that will help report developers (Business Intelligence BI professionals) to  display images stored in database tables .
Since Microsoft SQL Server Reporting Services is gaining power in covering the requirements of business intelligence developers day by day, it is gaining more acceptance from the BI professionals.

For building a Microsoft Reporting Services solution to  display database image or display image from database , we will first create sql database image table and insert images into the sql database for populating table with sample data.
Of course you should either create a new MS Reporting Services solution or open an existing MS Reporting Services solution and add reporting services report to this solution.

 

Prepare SQL Database and Populate with Sample Images in order to use in Reporing Services Report

First of all by executing the below t-sql  Create Table  command sql database administrators can create the database table in which sql developers will store images or image files in  binary format  in a varbinary(max)  data type column.

CREATE TABLE DBFiles (
 id int IDENTITY(1,1) NOT NULL,
 fname nvarchar(1000) NOT NULL,
 [file] varbinary(max)
)

 

Save Image in SQL Database in Binary Format

After we have created the  sql database table  to store the image files, now we can begin inserting images into the newly created sql database table.
You can also refer to SQL tutorial  Save Image to Database Table in SQL Server  for an other example.

INSERT INTO DBFiles(fname, [file])
SELECT 'Reporting-Services-2008-enriched-visualization-gadgets.jpg', * FROM OPENROWSET(
 BULK N'C:\Reporting-Services-2008-enriched-visualization-gadgets.jpg',
 SINGLE_BLOB
) rs;
INSERT INTO DBFiles(fname, [file]) 
SELECT 'what-is-new-with-SQL-Server-2008.jpg', * FROM OPENROWSET(
 BULK N'C:\what-is-new-with-SQL-Server-2008.jpg',
 SINGLE_BLOB
) rs;

You can download the sample image files photos I've taken during TechEd Developers 2007 related with MS SQL Server 2008  and  MS SQL Server Reporting Services 2008  from the following links :
Reporting Services 2008 enriched visualization gadgets
What is new with SQL Server 2008

Let's see how images we have inserted into the sql table is seen when we execute a SELECT statement.

SELECT * FROM Files

save image files in sql server using openrowset

Now we have created our sample sql table and populate the image table with sample image files.
We can now create our MS SQL Server Reporting Services 2008 report which will display the image files stored in the SQL Server database table.

 

Build SQL Reporting Services DataSet for Sample Report

First of all, we will create a  dataset  for reading data from  SQL Server database image table .
We will use this dataset for databinding to  reporting services table control  and  image control  within the table cells for each row in the sql image table.

dataset for reading and displaying image from sql table

The sql query for the dataset is :  SELECT * FROM DBFiles
This t-sql query will supply the sql data in binary format which we will display using Reporting Services.

 

Design Reporting Services Report in order to Display Database Image

After the dataset of the  SQL Reporting Services report  is prepared, now we can switch to the design view.
Place a table onto the Design surface of the SSSRS 2008 report.
Then set the DataSetName property of the new  Tablix component  to the dataset we have created for this sample report.

Then set field properties or the columns of the report design view  tablix  component as you wish.

SSRS databound image from DB design view table

Select the Reporting Services  image  component from the Toolbox and drag and drop into an empty tablix  column.

SSRS toolbox image component

This action will trigger the  Reporting Services Image Properties Wizard .
You can later alter the properties of the image cell by a click on the  image properties  menu item on the context menu of the image cell.

SSRS databound image from db image properties

Set the image properties as follows :
1) Set the  image source  as  database , since we are selecting the image in binary format from database using reporting services dataset.
2) When  database  is chosen as the source of the image, you will select the field name as [file] field of the dataset in the  Use this field  dropdown list.
3) Also as the last step select the MIME type as  image/jpeg  (or which is approtiate for your case)

 

Resize Database Image and Size Properties of the SQL Database Image

You can also set the  size  properties of the database image and image component within the  tablix component by displaying the image properties and navigating to the  Size  tab.
There you can select one of the following size properties for display database images.
Original size
Fit to size
Fit proportional
Clip

I have selected  fit proportional  option which will resize image to fit inside the item while maintaining the aspect ratio.

 

Display Database Image on a SQL Server Reporting Services Report

After we have finished developing the  MS SQL Server 2008 Reporting Services report , if you switch to the  preview  tab we can see the images stores in sql table on our sample SSRS report.

display image from database using sql reporting services report

 

Display Database Image using MS SQL Server 2008 Reporting Services


更多文章、技术交流、商务合作、联系博主

微信扫码或搜索:z360901061

微信扫一扫加我为好友

QQ号联系: 360901061

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描下面二维码支持博主2元、5元、10元、20元等您想捐的金额吧,狠狠点击下面给点支持吧,站长非常感激您!手机微信长按不能支付解决办法:请将微信支付二维码保存到相册,切换到微信,然后点击微信右上角扫一扫功能,选择支付二维码完成支付。

【本文对您有帮助就好】

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描上面二维码支持博主2元、5元、10元、自定义金额等您想捐的金额吧,站长会非常 感谢您的哦!!!

发表我的评论
最新评论 总共0条评论