| 网站首页| |招标公告| |采购公告| |资讯中心| |采购机构| |项目中心| |供应商库| |会员中心| |招标助手| |专家库 |
怎样把SQL中的数据输出到HTML页面

来源:中国政府采购招标网 时间:2008/9/22
我们平常在查询数据库的时候,经常会把一些查询的结果保存起来,如数据存放到EXCEL中,但如果能有办法把数据存放到HTML页面中去显示,并且把数据以网页形式展现出来的时候,这样会更直观。

  我们先来了解一下模板文件,Template模板,后缀名称为TPL,TPL文件和HTML文件一样,在TPL文件中注意其中的">标记,分别代表的意思如下:

  Begindetail:代表准备开始替换模板文件的开始

  Enddetail:代表结束替换模板文件

  insert_data_here:代表指明在何处插入结果集中的数据。如果结果集记录中包含多个字段的话,insert_data_here将按照其在记录中的顺序,也就是查询语句SELECT执行语句中的字段顺序,来按顺序地插入数据。也就是说,每个结果记录中的每个字段只能在页面中被插入一次。如果要想在页面中多次使用某个字段,可以先将它赋给一个变量。然后再反复地使用此变量即可。

  那我们就来做一个简单格式的TPL模板,命名为OutPutHtml.TPL,模板的HTML代码如下:

<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<TITLE>show HTML</TITLE>
  
<BODY>
<center>
<P>
<H2>
<TABLE BORDER="1" cellpadding="0" cellspacing="0">
<TR> <TH><B>公司名称</B></TH> 
     <TH><B>联系人</B></TH>
     <TH><B>产品名称</B></TH>
     <TH><B>产品名称</B></TH>
</TR>
<%begindetail%>
<TR> <TD> <%insert_data_here%>  </TD>
    <TD ALIGN=RIGHT><%insert_data_here%></TD>
    <TD ALIGN=RIGHT><%insert_data_here%></TD>
    <TD ALIGN=RIGHT><%insert_data_here%></TD>
</TR>
<%enddetail%>
</TABLE> 
</center>  
</H2>
</BODY>
</HTML>
 


模板文件做好后,我们先把它存放在“D:\SQL Server文件”目录下面,然后我们在SQL SERVER查询分析器里面执行下面的代码:
    EXECUTE sp_makewebtask 
  @outputfile = ’D:\SQL Server文件\OutPutHtml.htm’, 
  @query = ’Select Suppliers.CompanyName,Suppliers.ContactName,Products.ProductName,Products.UnitPrice 
  From Suppliers Inner Join Products On Suppliers.SupplierID=Products.SupplierID 
  Where Suppliers.SupplierID=1’, 
  @templatefile = ’D:\SQL Server文件\OutPutHtml.TPL’, 
  @dbname = ’NorthWind’, 
  @rowcnt = 0, 
  @whentype = 9 , 
  @lastupdated = 1 
  GO 


  我们先看sp_makewebtask这个SQL Server自带的系统存储过程,它用来创建一项生成 HTML文档的任务,该文档包含执行过的查询返回的数据。在本例中,上述的参数分别代表的意思为:

  @outputfile

  生成HTML 文件的位置。如果文档将在远程计算机上生成,则该参数可以是 UNC 名称。

  @query

  要运行的查询。当在运行任务时,查询结果将以表格形式显示在 HTML 文档中。可以指定多个 SELECT 查询,这样可以在 outputfile 中显示多个表。

  @templatefile

  用于生成 HTML 文档的模板文件的路径。模板文件包含 HTML 文档的格式特征信息和标记 ,该标记指示将查询结果添加到 HTML 表中的位置。

  @dbname

  在其上运行查询的数据库名。

  指定查询结果是以粗体 (1) 还是非粗体 (0) 显示。bold 的数据类型为 tinyint,默认值为 0。

  @rowcnt

  指定生成的 HTML 文档中所显示行的最大值。默认值为 0,用来指定显示在 HTML 文档中满足给定查询的所有行。

  @whentype

  指定何时运行创建 HTML 文档的任务。9代表立即和应请求创建页。将立即创建和重新创建 HTML 文档。

@lastupdated

  指定所生成的 HTML 文档是否显示“上次更新时间:”时间戳指示上次更新的日期和时间 (1) 或者没有时间戳 (0)。在 HTML 文档中,时间戳出现在查询结果的前一行。

  上面的存储过程如果在SQL Server 2005下执行,还须得开通执行它的权限,可以执行下面的代码:

      sp_configure ’show advanced options’, 1; 
  GO 
  RECONFIGURE; 
  GO 
  sp_configure ’Web Assistant Procedures’, 1; 
  GO 
  RECONFIGURE 
  GO 


  执行过后,我们看在D盘SQL Server文件下面生成一个OutPutHtml.htm文件,查看原代码,可以看到模板标记替换成对应的数据库的内容,代码如下:

<HTML> 
<HEAD>  
<HTML> 
<HEAD>  
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<TITLE>show HTML</TITLE>
  
<BODY>
<center>
<P>
<H2>
<TABLE BORDER="1" cellpadding="0" cellspacing="0">
<TR> <TH><B>公司名称</B></TH> 
     <TH><B>联系人</B></TH>
     <TH><B>产品名称</B></TH>
     <TH><B>产品名称</B></TH>
</TR> 
<TR> <TD> Exotic Liquids  </TD>
    <TD ALIGN=RIGHT>Charlotte Cooper</TD>
    <TD ALIGN=RIGHT>Chai</TD>
    <TD ALIGN=RIGHT>18.0000</TD>
</TR>

<TR> <TD> Exotic Liquids  </TD>
    <TD ALIGN=RIGHT>Charlotte Cooper</TD>
    <TD ALIGN=RIGHT>Chang</TD>
    <TD ALIGN=RIGHT>19.0000</TD>
</TR>

<TR> <TD> Exotic Liquids  </TD>
    <TD ALIGN=RIGHT>Charlotte Cooper</TD>
    <TD ALIGN=RIGHT>Aniseed Syrup</TD>
    <TD ALIGN=RIGHT>10.0000</TD>
</TR>

</TABLE> 
</center>  
</H2>
</BODY>
</HTML> 

 

运行此HTML文件,可以看到结果如图:
SQL SERVER查询结果输出到HTML页面
图 SQL SERVER查询结果输出到HTML页面  
     就和SQL语句查询的结果对应了,这样,我们就把查询语句输入到HTML页面了。
  IT专家网原创文章,未经许可,严禁转载!

[打印本页] [关闭窗口]

| 关于我们 | 广告服务 | 展会推荐 | 网站导航 | 友情链接 | 自助友情链接 | 机构文件 | 汇款帐号 | 网站律师 | 联系我们 |
中国政府采购招标网©2000-2023 本站网络实名/中文域名:"中国政府采购招标网.中文网 政府采购网.中文网 招标网.中文网"
本网站域名:www.chinabidding.org.cn 中国政府采购招标网 京ICP备2021005469  京公网安备11010602005260
技术支持:北京中政发科学技术研究中心 政府采购信息服务:政采标讯科技(北京)有限公司 All rights reserved
网站管理:政府采购招标中心 联系电话:010-68282024 83684022 传真:010-83684022 更多联系电话...
标讯接收邮箱:service@gov-cg.org.cn 供应商邮箱:zfcgzb@gov-cg.org.cn