今天是:
首 页信息查询网站SEO查询工具CSS编辑器建站素材
网海拾贝,电脑资讯,电脑快报,it资讯,网站建设资讯,教程基地
软件新闻
操作系统
Vista Winxp Win2003 Linux Windows综合
工具软件
系统工具 媒体工具 网络工具 杀毒软件 聊天
软件开发
C教程 C++ Java C# ASP.NET JSP PHP
数据库
Oracle MySQL DB2 SQL Server Sybase
安全
网络 病毒
办公应用
Word Excel Powerpoint Outlook 其他
平面设计
Photoshop Fireworks Coreldraw Flash Illustrator 3dsmax
网站运营
网站运营 网站优化 网站策划 策划书下载 建站心得 站长故事 网站盈利 网页制作 网页特效 建站素材 免费资源 QQ频道
  当前位置:首 页 >> 软件开发 >> PHP教程 >> PHP与数据库试题 Zend权威认证试题讲解

PHP与数据库试题 Zend权威认证试题讲解

  发布于2008-04-21 14:49 来源:网海拾贝

如果你需要开发动态内容的网站,那么就肯定要用到数据库。尽管现代网站离不开数据库,但很多开发者对它的工作原理仍然知之甚少。
PHP支持许多种类的数据库,可PHP认证只和PHP能力有关,所以本章的题目不会专门针对某个特定的数据库管理系统。另外,大多数商业DBMS,比如MySQL AB,都有它们自己的认证课程。
本章考察你对数据库原理及数据库编程的相关知识——与特定的DBMS无关。


问题

1.考虑如下SQL语句。哪个选项能对返回记录的条数进行限制?(双选)

SELECT * FROM MY_TABLE

A.如果可能,用把查询转换成存储例程
B.如果程序允许,给查询指定返回记录的范围
C.如果可能,添加where条件
D.如果DBMS允许,把查询转换成视图
E.如果DBMS允许,使用事先准备好的语句


2.可以用添加______条件的方式对查询返回的数据集进行过滤?

答案:____________


3.内关联(inner join)是用来做什么的?

A.把两个表通过相同字段关联入一张持久的表中
B.创建基于两个表中相同相同行的结果集
C.创建基于一个表中的记录的数据集
D.创建一个包含两个表中相同记录和一个表中全部记录的结果集
E.以上都不对


4.以下哪个DBMS没有PHP扩展库?

A.MySQL
B.IBM DB/2
C.PostgreSQL
D.Microsoft SQL Server
E.以上都不对


5.考虑如下脚本。假设mysql_query函数将一个未过滤的查询语句送入一个已经打开的数据库连接,以下哪个选项是对的?(双选)

以下是代码片段:
<?php
 $r = mysql_query ('DELETE FROM MYTABLE WHERE ID=' .  $_GET['ID']);
?>

A.MYTABLE表中的记录超过1条
B.用户输入的数据需要经过适当的转义和过滤
C.调用该函数将产生一个包含了其他记录条数的记录
D.给URL传递ID=0+OR+1将导致MYTABLE中的所有表被删除
E.查询语句中应该包含数据库名


6.______语句能用来向已存在的表中添加新的记录。

答案:____________


7.以下哪个说法正确?

A.使用索引能加快插入数据的速度
B.良好的索引策略有助于防止跨站攻击
C.应当根据数据库的实际应用按理设计索引
D.删除一条记录将导致整个表的索引被破坏
E.只有数字记录行需要索引


8.join能否被嵌套?

A.能
B.不能


9.考虑如下数据表和查询。如何添加索引能提高查询速度?

CREATE TABLE MYTABLE (
ID INT,
NAME VARCHAR (100),
ADDRESS1 VARCHAR (100),
ADDRESS2 VARCHAR (100),
ZIPCODE VARCHAR (10),
CITY VARCHAR (50),
PROVINCE VARCHAR (2)
)
SELECT ID, VARCHAR
FROM MYTABLE
WHERE ID BETWEEN 0 AND 100
ORDER BY NAME, ZIPCODE

A.给ID添加索引
B.给NAME和ADDRESS1添加索引
C.给ID添加索引,然后给NAME和ZIPCODE分别添加索引
D.给ZIPCODE和NAME添加索引
E.给ZIPCODE添加全文检索


10.执行以下SQL语句后将发生什么?

BEGIN TRANSACTION
DELETE FROM MYTABLE WHERE ID=1
DELETE FROM OTHERTABLE
ROLLBACK TRANSACTION

A.OTHERTABLE中的内容将被删除
B.OTHERTABLE和MYTABLE中的内容都会被删除
C.OTHERTABLE中的内容将被删除,MYTABLE中ID是1的内容将被删除
D.数据库对于执行这个语句的用户以外的起来用户来说,没有变化
E.数据库没用变化


11.DESC在这个查询中起什么作用?

SELECT *
FROM MY_TABLE
WHERE ID > 0
ORDER BY ID, NAME DESC

A.返回的数据集倒序排列
B.ID相同的记录按NAME升序排列
C.ID相同的记录按NAME倒序排列
D.返回的记录先按NAME排序,再安ID排序
E.结果集中包含对NAME字段的描述


12.以下哪个不是SQL函数?

A.AVG
B.SUM
C.MIN
D.MAX
E.CURRENT_DATE()


13.如果一个字段能被一个包含GROUP BY的条件的查询语句读出,以下哪个选项的描述正确?

A.该字段必须有索引
B.该字段必须包括在GROUP BY条件中
C.该字段必须包含一个累积值
D.该字段必须是主键
E.该字段必须不能包含NULL值


14.以下查询输出什么?

SELECT COUNT(*) FROM TABLE1 INNER JOIN TABLE2
ON TABLE1.ID <> TABLE2.ID

A.TABLE1和TABLE2不相同的记录
B.两个表中相同的记录
C.TABLE1中的记录条数乘以TABLE2中的记录条数再减去两表中相同的记录条数
D.两表中不同记录的条数
E.数字2


15.______能保证一组SQL语句不受干扰的运行?

答案:____________

 

答案速查
1:BC
2:WHERE
3:B
4:E
5:BD
6:INSERT
7:C
8:A
9:C
10:E
11:C
12:E
13:BC
14:C
15:事务

 

答案详解

1.有两个方法能限制返回记录的条数——使用where条件和指定查询返回的记录的范围。通常情况下,如果没有特殊需要,尽量不要用select *,这会浪费大量的数据缓存。答案是B和C。

2.有很多种方式能过滤查询返回的数据,但这题描述的显然是where条件。

3.答案是B。内关联(inner join)把两个表通过一个特定字段关联起来,并创建该字段相同的所有记录的数据集。

4.答案是E。PHP有PostgreSQL和MySQL扩展库。访问DB/2可以用ODBC,访问Microsoft SQL Server可以用TDS和mssql扩展。这题考验你对PHP的兼容性的了解——在决定开发小组要使用什么数据库时会用得上。

5.答案是B和D。用户输入未经过滤就直接送往了数据库,这非常危险。如果URL包含ID=0+OR+1这样的参数时,实际的查询为DELETE FROM MYTABLE WHERE ID = 0 OR 1,数据库将删除表中所有的记录。

6.答案显然是INSERT。

7.答案是C。创建合理的索引需要分析数据库的实际用途并找出它的弱点。优化脚本中的冗余查询同样也能提高数据库效率。

8.能。你可以嵌套任意数量的join条件,但最终的结果可能并不是你想要的。

9.答案是C。给ID字段设置索引能提高where条件执行的效率,给NAME和ZIPCODE设索引则能使排序更快。

10.这个查询是一个事务,并且这个事务的最后有回滚,数据库不会有变化,因此答案是E。

11.答案是C。DESC能反转默认的排序机制。因此在本题中,数据将先按ID升序排列,再按NAME降序排列。

12.CURRENT_DATE函数不是标准SQL中的函数(但某些特定的数据库平台可能包含了这个函数)。

13.答案B和C正确。在标准SQL中,如果出现GROUP BY,结果集中所有的字段都必须是聚集值,或者是GROUP BY结构本身的一部分。某些DBMS——比如MySQL——允许你打破这种规则,但它不按标准的方式执行,并且在其他数据库系统上无效。

14.本题描述了一种在使用join时常犯的概念性错误。很多人可能觉得这个查询将返回两个表中非共有记录。但实际上数据库却认为是“读出所有ID非共有的记录”。DBMS将读取读取左边表中所有的记录加上右边表中ID非共有的记录。因此,该查询将读取TABLE1中的每条记录乘以TABLE2中的每条记录再减去两表中相同的记录条数。

15.事务能实现这个功能。事务能将任意个SQL语句组合起来一起执行,或者一起回滚。


中查找“PHP与数据库试题 Zend权威认证试题讲解”更多相关内容

中查找“PHP与数据库试题 Zend权威认证试题讲解”更多相关内容



上一篇:PHP处理电子邮件试题 Zend权威认证试题讲解
下一篇:php数据库导出类 导出JSON,XML,WORD,EXCEL
最近更新 赞助商
·PHP单件模式结合命令链模式10-31
·取消网页缓存的html,asp,php代码10-28
·php时间比较函数DateDiff10-28
·php left函数 解决中文被截成乱码的问题10-28
·PHP上传类源码 瑞意上传类 RUpload10-28
·Windows Server 2008系统IIS7中PHP环境的..10-21
·PHP开发的Myers 订单跟踪系统 (MOTS)09-18
·php教程:php设计模式介绍之适配器模式08-22
·php使用curl模拟用户登陆08-21
·php的curl实现get和post08-18
·Perl操作mysql数据库的方法08-18

共有评论 0 条 网友评分 0分 查看所有评论


发表评论→ 学而不思则罔,思而不学则殆,请大胆发表你的见解。

输验证码:

您对此篇文章的评分:1分 2分 3分 4分 5分

  • 站内搜索
关键词

搜索方式

搜索范围

精确匹配
Baidu
网站首页 - 关于本站 - 网站地图 - 广告合作 - 站点声明 - RSS订阅 - 联系我们
Copyright © 2005 网海拾贝.[新ICP备05003216号]. All Rights Reserved .