您的位置:首页技术开发数据库技巧 → 用SQL Server为Web浏览器提供图像(四)转

用SQL Server为Web浏览器提供图像(四)转

时间:2004/11/15 23:30:00来源:本站整理作者:蓝点我要评论(0)

建立Web项目和设置数据库连接



在注册了 ImageLoader 动态链接库之后,我们就可以建立Web项目了。我们使用微软Visual InterDev 1.0 建立ASP页面以及到微软SQL Server数据库的数据连接。



首先,打开微软Visual InterDev。在文件File 菜单里,选择新建(New)菜单项。在出现的对话框里,选中Web项目向导,在项目名称字段里输入ImageLoad 。单击确定(OK),完成后面两步,结束向导。



可以看到, Visual InterDev 在工作空间(Workspace)窗口里自动地生成了一个文件,叫做Global.asa。在用户第一次查看Web程序里的页面里,就会自动生成这个文件。要连接SQL Server里的数据库,选择项目 | 加入项目(Project | Add To Project),然后选择数据连接(Data Connection)。这里,选择数据源对话框出现,我们必须定义一个数据源名称(DSN)。



单击新建(New)按钮,在列出的可用数据驱动程序列表里,选择SQL Server,然后单击下一步(Next)。接着,在输入框里输入 Grocevb 作为DSN。接下来的几步很容易完成,不再详述。



下面,出现了SQL Server 登录对话框。输入服务器名称,登录ID和口令,并单击选项(Option)按钮。从列出的可用数据库列表里,选择Grocevb,单击确定(OK)。在结束了全部以上步骤之后,就返回到了选择数据源对话框。在这里,从DSN列表里单击文件名 Grocevb.dsn,然后完成后面几步结束这段操作。



现在,可以双击Global.asa,查看以上步骤在这个文件里生成的代码。代码定义了连接SQL Server数据库所必需的一些变量。



为了初始化类 clsImageLoader ,必须在Global.asp的开始放两行代码。我们在列表 C里列出了Global.asa里的代码。注意clsImageLoader 是一个会话范围内的对象。



列表 C: Global.asa

















建立ASP页面



为了连接到数据库,并和ImageLoader这个动态链接库通信,我们在Web项目里建立了一个ASP文件。方法是在文件(File)菜单里选择新建(New)菜单项,在文件(Files)标签卡中选择ASP页面图标,在输入框里输入文件名称。我们把这个页面命名为default.asp。在default.asp 里包含的代码如列表 D所示。



列表 D: default.asp



<% Set dbConn = Server.CreateObject("ADODB.Connection")

   dbConn.ConnectionTimeout = Session("Grocevb_ConnectionTimeout")

   dbConn.CommandTimeout = Session("Grocevb_CommandTimeout")

   dbConn.Open Session("Grocevb_ConnectionString"), Session("Grocevb_RuntimeUserName"), _

                                                    Session("Grocevb_RuntimePassword")



   Set cmdTemp = Server.CreateObject("ADODB.Command")

   Set rstProduct = Server.CreateObject("ADODB.Recordset")

       cmdTemp.CommandText = "SELECT prod_id, prod_name, prod_desc, prod_unitprice, & _

                               " prod_unitquant, prod_imagetype " & _

                               "FROM Products ORDER BY prod_name"

       cmdTemp.CommandType = 1

       Set cmdTemp.ActiveConnection = dbConn

       rstProduct.Open cmdTemp, , 0, 1



       objImageLoader.DbName = "Grocevb"

       objImageLoader.TableName = "Products"

       objImageLoader.NameOfImageColumn = "prod_image"

       objImageLoader.NameOfImageTypeColumn = "prod_imagetype"

       objImageLoader.NameOfImageIdColumn = "prod_id"

       objImageLoader.OpenConnection

%>







从SQL Server装载图片的示例





  <%Do While Not rstProduct.EOF %>

  <%ProdId = rstProduct("prod_id") %>

  <% objImageLoader.CreateTempImageFile(ProdId) %>

  <% FileName =  "images/" & objImageLoader.ImageFile(ProdId) %>



  

   


      

      

    


         >

         



      Image type: <% = rstProduct("prod_imagetype") %>

      


          

<% =rstProduct("prod_name") %>



          

<% =rstProduct("prod_desc") %>



      


    



  

      

                                   

   


         

Unit quantity: <% = rstProduct("prod_unitquant") %>



      


         

Unit price: <% =rstProduct("prod_unitprice") %>



      


  

  



<% rstProduct.MoveNext %>

<% Loop %>









注意:类ImageLoader 里定义的CreateTempImageFile 方法和ImageFile 属性(只读)需要图片ID作为参数。在这个例子里,图片ID就是表Products的主关键字(prod_id) 。所以, prod_id 的值必须传递给动态链接库。





总结



在这篇文章里,我们演示了一个方法,使用ActiveX动态链接库和ASP,可以从微软SQL Server服务器把图片装载到Web浏览器。它已经表明,这个方法在快速开发、容易使用和自定义Web页面的灵活上都有优势。动态链接库被用来连接数据库,提取图片数据,把图片数据放入文件。ASP页面则负责与SQL数据库和动态链接库通信。我们已经介绍了设置SQL数据库和Web项目的操作过程。



虽然这篇文章里的动态链接库和数据库的功能做了简化,但这里介绍的步骤对于其它任何强大复杂的Web项目都是有效的。  




相关阅读 Windows错误代码大全 Windows错误代码查询激活windows有什么用Mac QQ和Windows QQ聊天记录怎么合并 Mac QQ和Windows QQ聊天记录Windows 10自动更新怎么关闭 如何关闭Windows 10自动更新windows 10 rs4快速预览版17017下载错误问题Win10秋季创意者更新16291更新了什么 win10 16291更新内容windows10秋季创意者更新时间 windows10秋季创意者更新内容kb3150513补丁更新了什么 Windows 10补丁kb3150513是什么

文章评论
发表评论

热门文章 没有查询到任何记录。

最新文章 mssql企业管理器不能打 Oracle PRKC-1002错误原因和解决方案SQL SERVER数据库日志清空图文教程win2003计算机改名后sql server 2005 本地复DB2错误信息码大全

人气排行 彻底解决mysql中文乱码的办法mysql数据库root密码忘记的修改方法SQL SERVER数据库日志清空图文教程.bak备份文件如何恢复Oracle PRKC-1002错误原因和解决方案Oracle错误代码大全如何将txt的文本数据导入SQL server 2005呢DB2错误信息码大全