提供3000多款全球软件/控件产品
针对软件研发的各个阶段提供专业培训与技术咨询
根据客户需求提供定制化的软件开发服务
全球知名设计软件,显著提升设计质量
打造以经营为中心,实现生产过程透明化管理
帮助企业合理产能分配,提高资源利用率
快速打造数字化生产线,实现全流程追溯
生产过程精准追溯,满足企业合规要求
以六西格玛为理论基础,实现产品质量全数字化管理
通过大屏电子看板,实现车间透明化管理
对设备进行全生命周期管理,提高设备综合利用率
实现设备数据的实时采集与监控
利用数字化技术提升油气勘探的效率和成功率
钻井计划优化、实时监控和风险评估
提供业务洞察与决策支持实现数据驱动决策
翻译|使用教程|编辑:李显亮|2020-04-16 10:46:20.717|阅读 199 次
概述:在本文中,我们将看到如何使用Spire.PDF在SQL CLR中创建简单的PDF文档以及如何在SQL Server中部署它。
# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>
SQL CLR是用于在SQL Server中托管Microsoft .NET公共语言运行时引擎的技术。SQLCLR允许托管代码由Microsoft SQL Server环境托管并在其中运行。
这种技术是在Microsoft SQL Server 2005中引入的,例如,允许用户使用.NET语言(例如C#或VB.NET)在SQL Server中创建以下类型的托管代码对象。
Spire.PDF是一个PDF库,其中包含令人难以置信的丰富功能,可以在.NET,Silverlight和WPF平台上创建,读取,编辑和处理PDF文档。作为独立的PDF库,它不需要用户安装Adobe Acrobat或任何其他第三方库。
在本文中,我们将看到如何使用Spire.PDF在SQL CLR中创建简单的PDF文档以及如何在SQL Server中部署它。只需按照以下步骤操作,即可完成。
启用SQL CLR集成
对于SQL Server,SQL CLR程序集是外部代码,因此在SQL Server默认安装配置中,SQL CLR被阻止不使用,要使用它,必须首先将其打开。
<font style="vertical-align: inherit;"><font style="vertical-align: inherit;">sp_configure'启用clr',1</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;"> 走</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;"> 重新配置</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;"> 走</font></font><font></font>
现在,SQL Server准备执行使用C#编程语言构建的数据库对象。
添加依赖程序集
为了使用非SAFE CLR组件,首先,我们需要打开“可信任”。
<font style="vertical-align: inherit;"><font style="vertical-align: inherit;">ALTER DATABASE SpirePDFCLR设置为可信任 </font></font>
现在,我们可以通过以下代码添加依赖程序集。
<font style="vertical-align: inherit;"><font style="vertical-align: inherit;">创建组件[System.Windows.Forms] </font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;"> 从'C:\ WINDOWS \ Microsoft.NET \ Framework \ v2.0.50727 \ System.Windows.Forms.dll'</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;"> WITH PERMISSION_SET =不安全</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;"> 创建组件[System.Web] </font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;"> 从'C:\ Windows \ Microsoft.NET \ Framework \ v2.0.50727 \ System.Web.dll'</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;"> WITH PERMISSION_SET =不安全</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;"> 创建组件[Microsoft.mshtml]</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;"> FROM'C:\ Windows \ Microsoft.NET \ Framework \ v2.0.50727 \ Microsoft.mshtml.dll'</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;"> WITH PERMISSION_SET =不安全</font></font><font></font>
添加这些程序集后,我们可以添加Spire.Pdf.Dll。
<font style="vertical-align: inherit;"><font style="vertical-align: inherit;">创建组件[Spire.Pdf] </font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;"> 从'D:\ NET2.0 \ Spire.Pdf.dll'</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;"> WITH PERMISSION_SET =不安全</font></font><font></font>
然后转到对象浏览器,选择SpirePDFCLR数据库,右键单击并选择“ 刷新 ”。它们将显示在“程序集”下,如下所示。
在SQL CLR中创建和处理PDF文档
将Spire.Pdf.dll添加到数据库后,我们可以在SQL CLR中创建和操作PDF文档。这里我们以存储过程为例。
将以下代码放入存储过程中。当我们执行存储过程时,它将创建一个PDF文档。
<font style="vertical-align: inherit;"><font style="vertical-align: inherit;">使用系统;</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;"> 使用System.Data;</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;"> 使用System.Data.SqlClient;</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;"> 使用System.Data.SqlTypes;</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;"> 使用Microsoft.SqlServer.Server;</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;"> 使用Spire.Pdf;</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;"> 使用Spire.Pdf.Graphics;</font></font><font></font> <font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;"> 公共局部类UserDefinedFunctions</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;"> {</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;"> [Microsoft.SqlServer.Server.SqlProcedure]</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;"> 公共静态无效StoreProcedure()</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;"> {</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;"> PdfDocument doc =新的PdfDocument();</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;"> PdfPageBase页面= doc.Pages.Add();</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;"> page.Canvas.DrawString(“ Hello world”,new PdfFont(PdfFontFamily.Courier,100),PdfBrushes.Black,0,0);</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;"> doc.SaveToFile(“ d:\\ result.pdf”);</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;"> }</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;"> };</font></font><font></font>
下一步构建并部署解决方案。如果一切正常,则表示部署成功。然后,我们将在SpirePDFCLR数据库中看到存储过程。
现在,我们将从SQL Server运行存储过程,但是在这里我们将得到如下错误。
我们需要将CLR项目的权限级别更改为不安全,然后再次部署它。
现在再次运行它,它将正常工作,我们将获得PDF文档。
本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@cahobeh.cn
本文探讨 SQL Server 中 NULL 和空值之间的区别,并讨论如何有效地处理它们。
Unity 是一款功能极其丰富的游戏引擎,允许开发人员将各种媒体集成到他们的项目中。但是,它缺少最令人兴奋的功能之一 - 将 Web 内容(例如 HTML、CSS 和 JavaScript)直接渲染到 3D 场景中的纹理上的能力。在本文中,我们将介绍如何使用 DotNetBrowser 在 Unity3D 中将 Web 内容渲染为纹理。
DevExpress v24.2帮助文档正式发布上线了,请按版本按需下载~
本教程将向您展示如何用MyEclipse构建一个Web项目,欢迎下载最新版IDE体验!
Spire.PDF for .NET是独立的PDF控件,用于.NET程序中创建、编辑和操作PDF文档
服务电话
重庆/ 023-68661681
华东/ 13452821722
华南/ 18100878085
华北/ 17347785263
客户支持
技术支持咨询服务
服务热线:400-700-1020
邮箱:sales@cahobeh.cn
关注我们
地址 : 重庆市九龙坡区火炬大道69号6幢