网络编程
位置:首页>> 网络编程>> Asp编程>> ASP设计常见问题及解答精要(2)

ASP设计常见问题及解答精要(2)

  发布时间:2009-04-21 11:16:00 

标签:asp,问答,问题,编程


  11、问题:评介Web数据库管理系统时,应该考虑哪些问题?

  答:在评价一个Web数据库管理系统时,必须考虑到三方面的问题:多用户问题;所建立的Web数据库应该是关系型的;数据库的安全性问题。
  12、问题:ADO是什么,它是如何操作数据库的?

  答:ADO的全名是ActiveX Data Object(ActiveX数据对象),是一组优化的访问数据库的专用对象集,它为ASP提供了完整的站点数据库解决方案,它作用在服务器端,提供含有数据库信息的主页内容,通过执行SQL命令,让用户在浏览器画面中输入,更新和删除站点数据库的信息。

  ADO主要包括Connection,Recordset和Command三个对象, 它们的主要功能如下:

  ·Connection对象:负责打开或连接数据库文件;
  ·Recordset对象:存取数据库的内容;
  ·Command对象:对数据库下达行动查询指令,以及执行SQL Server的存储过程。

  13、问题:使用Recordset对象和Command对象来访问数据库的区别在哪里?

  答:Recordset对象会要求数据库传送所有的数据,那么数据量很大的时候就会造成网络的阻塞和数据库服务器的负荷过重,因此整体的执行效率会降低。
利用Command对象直接调用SQL语句,所执行的操作是在数据库服务器中进行的,显然会有很高的执行效率。特别是在服务器端执行创建完成的存储过程,可以降低网络流量,另外,由于事先进行了语法分析,可以提高整体的执行效率。

  14、问题:是否必须为每一个Recordset对象创建一个Connection对象?

  答:可以同时对不同的Recordset对象使用相同的Connection对象,以节省资源。

  15、问题:什么是数据库管理系统(DBMS)?

  答:数据库为了保证存储在其中的数据的安全和一致,必须有一组软件来完成相应的管理任务,这组软件就是数据库管理系统,简称DBMS,DBMS随系统的不同而不同,但是一般来说,它应该包括以下几方面的内容:

  数据库描述功能:定义数据库的全局逻辑结构,局部逻辑结构和其他各种数据库对象;
  数据库管理功能:包括系统配置与管理,数据存取与更新管理,数据完整性管理和数据安全性管理;
  数据库的查询和操纵功能:该功能包括数据库检索和修改;
  数据库维护功能:包括数据引入引出管理,数据库结构维护,数据恢复功能和性能监测。

  为了提高数据库系统的开发效率,现代数据库系统除了DBMS之外,还提供了各种支持应用开发的工具。

  16、问题:当前流行的WEB数据库管理系统有哪些?

  答:当前流行的Web数据库管理系统有微软的SQL Server、Oracle、DB2、Sybase,小规模的企业多使用Access。

17、问题:在ASP中使用ADO的AddNew方法和直接使用“Insert into...”语句有何不同?哪种方式更好?

  答:ADO的AddNew方法只是将“Insert into ”语句封装了起来,所以,当对大量数据进行操作的时候,直接使用SQL语句将会大大加快存取数据的速度,因为它减少了ADO的“翻译”时间,由于SQL语句所执行的操作是直接在数据库服务器中进行的,尤其在数据量很大的时候有显著的优势。

  18、问题:为什么我在ASP中使用标准的插入记录语句 insert into books(name,email) values(“kitty”, “kitty@263.com”)会出错?

  答:SQL(Structured Query Language/结构式查询语言)是IBM公司在1970年代所发展出来的数据查询语言,它现在已经成为关系型数据库查询语言的标准。SQL语句是一种以英文为基础的程序语言,可以使用它来添加,管理以及存取数据库。

  在SQL语句中添加时的字符串虽然可以使用双引号,但在ASP中却需要使用单引号才能正常执行。所以应当写成insert into books(name,email) values(‘kitty’,‘kitty@263.com’)。

  19、问题:什么是ActiveX 控件? 在哪里可以得到这些ActiveX控件?

  答:Microsoft ActiveX控件是由软件提供商开发的可重用的软件组件。除了ASP的内嵌对象外,另外安装进来的ActiveX控件也可以在ASP中使用,这样可以节省许多宝贵的开发时间,在ASP中其实也内嵌了很多的ActiveX控件可以使用。

  使用ActiveX控件,可以很快地Web应用程序、以及开发工具中加入特殊的功能。例如,使用AdRotator对象来制作广告滚动板,使用FileSystemObject对象进行文件存取,使用Marquee对象实现滚动文字。

  现在,已有1000多个商用的ActiveX控件,开发ActiveX控件可以使用各种编程语言,如C,C++等,以及微软公司的 Visual Java开发环境Microsoft Visual J++。 ActiveX控件一旦被开发出来,设计和开发人员就可以把它当作预装配组件,用于开发客户程序。以此种方式使用 ActiveX控件,使用者无需知道这些组件是如何开发的,在很多情况下,甚至不需要自己编程,就可以完成网页或应用程序的设计。

  目前由第三方软件开发商提供的商用控件有1000多种。微软ActiveX组件库(ActiveX Component Gallery)中存着有关信息以及相关的连接,它们指向微软及第三方开发商提供的各种 ActiveX 控件。在微软ActiveX组件库(ActiveX Component Gallery)中,可以找到开发Internet增强型ActiveX 控件的公司列表。

20、问题:为什么使用strStartPort=(Request.Form ("catmenu_0")语句取到表单中起始站点的值在数据库却找不到?

  答:这是因为取到的起始站点的值可能有空格,比如原意是“杭州”,但是由于空格存在,ASP程序取到的值可能就是“ 杭州”,而数据库中只有“杭州”的记录,当然就找不到了,解决的方法是利用Trim 函数将字符串两头空格全部去除,相应的语句为:
strStartPort=TRIM(Request.Form("catmenu_0"))

0
投稿

猜你喜欢

手机版 网络编程 asp之家 www.aspxhome.com