($sid) { session_delete(array('sid' => $sid)); session_data_delete(array('sid' => $sid)); return TRUE; } function sess_gc($maxlifetime) { global $time; $expiry = $time - $maxlifetime; $arrlist = session_find(array('last_date' => array('<' => $expiry)), array(), 1, 10000, '', array('sid', 'bigdata', 'last_date')); if (!$arrlist) return TRUE; $expiry = $time - 21600; // 超6小时未提交丢弃上传图片和附件 $sidarr = array(); foreach ($arrlist as $val) { if ($val['last_date'] > $expiry && $val['bigdata']) continue; $sidarr[] = $val['sid']; } if (empty($sidarr)) return TRUE; session_delete(array('sid' => $sidarr)); session_data_delete(array('sid' => $sidarr)); return TRUE; } function sess_start() { global $conf, $sid, $g_session; ini_set('session.name', $conf['cookie_pre'] . 'sid'); ini_set('session.use_cookies', TRUE); ini_set('session.use_only_cookies', TRUE); ini_set('session.cookie_domain', $conf['cookie_domain']); // 为空则表示当前目录和子目录 ini_set('session.cookie_path', $conf['cookie_path']); // 打开后只有通过 https 才有效 ini_set('session.cookie_secure', FALSE); ini_set('session.cookie_lifetime', 8640000); // 打开后 js 获取不到 HTTP 设置的 cookie, 有效防止 XSS,对于安全很重要,除非有 BUG,否则不要关闭。 ini_set('session.cookie_httponly', TRUE); // 活动时间 ini_set('session.gc_maxlifetime', $conf['online_hold_time']); // 垃圾回收概率 = gc_probability/gc_divisor ini_set('session.gc_probability', 1); // 垃圾回收时间 5 秒,在线人数 * 10 / 每1000个请求回收一次垃圾 ini_set('session.gc_divisor', 1000); session_set_save_handler('sess_open', 'sess_close', 'sess_read', 'sess_write', 'sess_destroy', 'sess_gc'); // register_shutdown_function 会丢失当前目录,需要 chdir(APP_PATH) $conf['url_rewrite_on'] > 1 and function_exists('chdir') and chdir(APP_PATH); // 这个必须有,否则 ZEND 会提前释放 $db 资源 register_shutdown_function('session_write_close'); session_start(); $sid = session_id(); return $sid; } // 刷新页面清理附件缓存 废弃 function sess_clear_attach() { global $sid, $time; $arr = session_read($sid); if (!$arr || 0 == $arr['bigdata']) return TRUE; session_update($sid, array('bigdata' => 0, 'last_date' => $time)); session_data_delete(array('sid' => $sid)); return TRUE; } function online_count() { return session_count(); } function online_list_cache() { static $cache = array(); $key = 'online_list'; if (isset($cache[$key])) return $cache[$key]; $cache[$key] = cache_get($key); if (NULL === $cache[$key]) { $cache[$key] = session_find(array('uid' => array('>' => 0)), array('last_date' => -1), 1, 1000); foreach ($cache[$key] as &$online) { $user = user_read_cache($online['uid']); $online['username'] = $user['username']; $online['gid'] = $user['gid']; $online['ip_fmt'] = safe_long2ip($online['ip']); $online['last_date_fmt'] = date('Y-n-j H:i', $online['last_date']); } cache_set('online_list', $cache[$key], 300); } return $cache[$key]; } function online_user_list_cache() { static $cache = array(); $key = 'online_user_list'; if (isset($cache[$key])) return $cache[$key]; $cache[$key] = cache_get($key); if (NULL === $cache[$key]) { $cache[$key] = session_find(array('uid' => array('>' => 0)), array(), 1, 1000, 'uid', array('uid')); cache_set('online_user_list', $cache[$key], 300); } return $cache[$key]; } ?>数据库原理与应用简答题|江阴雨辰互联

数据库原理与应用简答题

数据库原理与应用简答题


2024年2月6日发(作者:)

1 .试述数据、数据库、数据库系统、数据库管理系统的概念。

2. 使用数据库系统有什么好处?

3. 试述文件系统与数据库系统的区别和联系。

4. 试述数据库系统的特点。

5. 数据库管理系统的主要功能有哪些?

6. 试述数据模型的概念、数据模型的作用和数据模型的三个要素。

7. 试述概念模型的作用。

8. 定义并解释概念模型中以下术语:实体,实体型,实体集,属性,码,实体联系图(E-R图)

9. 试述网状、层次数据库的优缺点。

10. 试述关系模型的概念,定义并解释以下术语: (1)关系 (2)属性 (3)域 (4)元组 (5)主码 (6)分量 (7)关系模式

11. 试述关系数据库的特点。

12. 试述数据库系统三级模式结构,这种结构的优点是什么?

13. 定义并解释以下术语:DDL、DML

14. 什么叫数据与程序的物理独立性?什么叫数据与程序的逻辑独立性? 为什么数据库系统具有数据与程序的独立性?

15. 试述数据库系统的组成。

16. DBA的职责是什么?

17. 系统分析员、数据库设计人员、应用程序员的职责是什么?

18. 试述关系模型的三个组成部分。

19. 试述关系数据语言的特点和分类。

20. 定义并理解下列术语,说明它们之间的联系与区别: (1) 域,笛卡尔积,关系,元组,属性(2)主码,候选码,外部码 (3)关系模式,关系,关系数据库

21. 试述关系模型的完整性规则。在参照完整性中,为什么外部码属性的值也可以为空?什么情况下才可以为空?

22. 等值连接与自然连接的区别是什么?

23. 代数的基本运算有哪些?如何用这些基本运算来表示其他的关系基本运算?

24. 试述SQL语言的特点。

25. 试述SQL的定义功能。

26. 用SQL语句建立第2章习题5中的四个表。

27. 针对上题中建立的四个表试用SQL语言完成第2章习题5中的查询。

28. 针对习题3中的四个表试用SQL语言完成以下各项操作: (1) 找出所有供应商的姓名和所在城市。 (2) 找出所有零件的名称、颜色、重量。 (3) 找出使用供应商S1所供应零件的工程号码。 (4) 找出工程项目J2使用的各种零件的名称及其数量。 (5) 找出上海厂商供应的所有零件号码。 (6) 找出使用上海产的零件的工程名称。 (7) 找出没有使用天津产的零件的工程号码。 (8) 把全部红色零件的颜色改成蓝色。 (9) 由S5供给J4的零件P6改为由S3供应,请作必要的修改。

29. 什么是基本表?什么是视图?两者的区别和联系是什么?

30. 试述视图的优点。

31. 所有的视图是否都可以更新?为什么?

32. 哪类视图是可以更新的,哪类视图是不可更新的? 各举一例说明。

33. 请为三建工程项目建立一个供应情况的视图,包括供应商代码(SNO)、零件代码(PNO)、供应数量(QTY)。针对该视图完成下列查询: (1) 找出三建工程项目使用的各种零件代码及其数量。 (2) 找出供应商S1的供应情况。

34. 针对习题3建立的表,用SQL语言完成以下各项操作: (1) 把对表S的INSERT权限授予用户张勇,并允许他再将此权限授予其他用户。 (2) 把查询SPJ表和修改QTY属性的权限授给用户李天明。

35. 在嵌入式SQL中是如何区分SQL语句和主语言语句的?

36. 在嵌入式SQL中是如何解决数据库工作单元与源程序工作单元之间通信的?

37. 在嵌入式SQL中是如何协调SQL语言的集合处理方式和主语言的单记录处理方式的?

38. 试给出各类关系系统的定义:最小关系系统;关系上完备的系统;全关系型的关系系统。

39. 试述全关系型系统应满足的十二条准则,以及十二条基本准则的实际意义和理论意义。

40. 试述查询优化在关系数据库系统中的重要性和可能性。

41. 试述查询优化的一般准则。

42. 试述查询优化的一般步骤。

43. 理解并给出下列术语的定义:函数依赖、部分函数依赖、完全函数依赖、传递依赖、候选码、主码、 外码、全码(All-key)、1NF、2NF、3NF、BCNF、多值依赖、4NF。

44. 试由Armostrong公理系统推导出下面三条推理规则: (1) 合并规则:若X→Z,X→Y,则有X→YZ (2) 伪传递规则:由X→Y,WY→Z有XW→Z (3) 分解规则:X→Y,Z ?Y,有X→Z

45. 试举出三个多值依赖的实例。

46. 试述数据库设计过程。

47. 试述数据库设计过程的各个阶段上的设计描述。

48. 试述数据库设计过程中结构设计部分形成的数据库模式。

49. 试述数据库设计的特点。

50. 需求分析阶段的设计目标是什么?调查的内容是什么?

51. 数据字典的内容和作用是什么?

52. 什么是数据库的概念结构?试述其特点和设计策略。

53. 什么叫数据抽象?试举例说明。

54. 试述数据库概念结构设计的重要性和设计步骤。

55.什么是E-R图?构成E-R图的基本要素是什么?

56. 为什么要视图集成?视图集成的方法是什么?

57. 什么是数据库的逻辑结构设计?试述其设计步骤。

58.试述把E-R图转换为DBTG模型和关系模型的转换规则。

59. 你能给出由E-R图转换为IMS模型的转换规则吗?

60. 规范化理论对数据库设计有什么指导意义?

61. 试述数据库物理设计的内容和步骤。

62. 你能给出关系数据库物理设计的主要内容吗?例如ORACLE数据库物理设计的内容。

63. 数据输入在实施阶段的重要性是什么?如何保证输入数据的正确性?

64. 什么是数据库的再组织和重构造?为什么要进行数据库的再组织和重构造?

65. 试述事务的概念及事务的四个特性。

66. 为什么事务非正常结束时会影响数据库数据的正确性,请列举一例说明之。

67. 数据库中为什么要有恢复子系统?它的功能是什么?

68.数据库运行中可能产生的故障有哪几类?哪些故障影响事务的正常执行?哪些故障破坏数据库数据?

69. 数据库恢复的基本技术有哪些?

70. 数据库转储的意义是什么? 试比较各种数据转储方法。

71. 什么是日志文件?为什么要设立日志文件?

72. 登记日志文件时为什么必须先写日志文件,后写数据库?

73. .针对不同的故障,试给出恢复的策略和方法。(即如何进行事务故障的恢复?系统故障的恢复?介质故障恢复?)

74. 什么是检查点记录,检查点记录包括哪些内容?

75. .具有检查点的恢复技术有什么优点?试举一个具体的例子加以说明。

76. 试述使用检查点方法进行恢复的步骤。

77. 什么是数据库镜像?它有什么用途?

78. 在数据库中为什么要并发控制?

79. 并发操作可能会产生哪几类数据不一致?用什么方法能避免各种不一致的情况?

80. 什么是封锁?

81. 基本的封锁类型有几种?试述它们的含义。

82. 什么是封锁协议?不同级别的封锁协议的主要区别是什么?

83. 不同封锁协议与系统一致性级别的关系是什么?

84. 什么是活锁?什么是死锁 ?

85. 试述活锁的产生原因和解决方法。

86. 请给出预防死锁的若干方法。

87. 请给出检测死锁发生的一种方法,当发生死锁后如何解除死锁?

88. 什么样的并发调度是正确的调度?

89. 试述两段锁协议的概念。

90. 为什么要引进意向锁? 意向锁的含义是什么?

91. 试述常用的意向锁:IS锁,IX锁,SIX锁,给出这些锁的相容矩阵。

92.什么是数据库的安全性?

93. 数据库安全性和计算机系统的安全性有什么关系?

94. 试述可信计算机系统评测标准的情况,试述TDI/TCSEC标准的基本内容。

95. 试述TCSEC(TDI)将系统安全级别划分为四组七个等级的基本内容。

96. 试述实现数据库安全性控制的常用方法和技术。

97. 什么是数据库中的自主存取控制方法和强制存取控制方法?

98. SQL语言中提供了哪些数据控制(自主存取控制)的语句?请试举几例说明它们的使用方法。

99. 为什么强制存取控制提供了更高级别的数据库安全性?

100. 理解并解释MAC机制中主体、客体、敏感度标记的含义。

101. 什么是数据库的审计功能,为什么要提供审计功能?

审计功能是指DBMS的审计模块在用户对数据库执行操作的同时把所有操作自动记录到系统的审计日志中。因为任何系统的安全保护措施都不是完美无缺的,蓄意盗窃破坏数据的人总可能存在。利用数据库的审计功能,DBA可以根据审计跟踪的信息,重现导致数据库现有状况的一系列事件,找出非法存取数据的人、时间和内容等。

102. 统计数据库中存在何种特殊的安全性问题?

统计数据库允许用户查询聚集类型的信息,如合计、平均值、最大值、最小值等,不允许查询单个记录信息。但是,人们可以从合法的查询中推导出不合法的信息,即可能存在隐蔽的信息通道,这是统计数据库要研究和解决的特殊的安全性问题。

103. 什么是数据库的完整性?

数据库的完整性是指数据的正确性和相容性。

104. 数据库的完整性概念与数据库的安全性概念有什么区别和联系?

数据的完整性和安全性是两个不同的概念,但是有一定的联系。前者是为了防止数据库中存在不符合语义的数据,防止错误信息的输入和输出,即所谓垃圾进垃圾出(Garbage In Garbage Out)所造成的无效操作和错误结果。后者是保护数据库防止恶意的破坏和非法的存取。也就是说,安全性措施的防范对象是非法用户和非法操作,完整性措施的防范对象是不合语义的数据。

105. 什么是数据库的完整性约束条件?可分为哪几类?

完整性约束条件是指数据库中的数据应该满足的语义约束条件。 一般可以分为六类:静态列级约束、静态元组约束、静态关系约束、动态列级约束、动态元组约束、动态关系约束。静态列级约束是对一个列的取值域的说明,包括以下几方面: 1. 对数据类型的约束,包括数据的类型、长度、单位、精度等 2. 对数据格式的约束 3. 对取值范围或取值集合的约束。 4. 对空值的约束 5. 其他约束静态元组约束就是规定组成一个元组的各个列之间的约束关系,静态元组约束只局限在单个元组上。静态关系约束是在一个关系的各个元组之间或者若干关系之间常常存在各种联系或约束。常见的静态关系约束有: 1. 实体完整性约束。 2.

参照完整性约束。• 3. 函数依赖约束。动态列级约束是修改列定义或列值时应满足的约束条件,包括下面两方面: 1. 修改列定义时的约束 2. 修改列值时的约束动态元组约束是指修改某个元组的值时需要参照其旧值,并且新旧值之间需要满足某种约束条件。动态关系约束是加在关系变化前后状态上的限制条件,例如事务一致性、原子性等约束条件。

106. DBMS的完整性控制机制应具有哪些功能?

DBMS的完整性控制机制应具有三个方面的功能: 1. 定义功能,即提供定义完整性约束条件的机制。 2. 检查功能,即检查用户发出的操作请求是否违背了完整性约束条件。 3. 违约反应:如果发现用户的操作请求使数据违背了完整性约束条件,则采取一定的动作来保证数据的完整性。

107. RDBMS在实现参照完整性时需要考虑哪些方面?

RDBMS在实现参照完整性时需要考虑以下几个方面: 1) 外码是否可以接受空值 2) 删除被参照关系的元组时的考虑,这时系统可能采取的作法有三种: (a)级联删除(CASCADES); (b)受限删除(RESTRICTED); (c)置空值删除(NULLIFIES)

3) 在参照关系中插入元组时的问题,这时系统可能采取的作法有: (a)受限插入 (b)递归插入 4) 修改关系中主码的问题一般是不能用UPDATE语句修改关系主码的。如果需要修改主码值,只能先删除该元组,然后再把具有新主码值

的元组插入到关系中。如果允许修改主码,首先要保证主码的唯一性和非空,否则拒绝修改。然后要区分是参照关系还是被参照关系。

108. 假设有下面两个关系模式: 职工(职工号,姓名,年龄,职务,工资,部门号),其中职工号为主码; 部门(部门号,名称,经理名,电话),其中部门号为主码;用SQL语言定义这两个关系模式,要求在模式中完成以下完整性约束条件的定义:定义每个模式的主码;定义参照完整性;定义职工年龄不得超过60岁。

CREATE TABLE DEPT (Deptno NUMBER(2), Deptname VARCHAR(10), Manager

VARCHAR(10), PhoneNumber Char(12) CONSTRAINT PK_SC PRIMARY KEY (Deptno));

CREATE TABLE EMP (Empno NUMBER(4), Ename VARCHAR(10), Age NUMBER(2),

CONSTRAINT C1 CHECK (Aage <= 60), Job VARCHAR(9), Sal NUMBER(7,2), Deptno

NUMBER(2), CONSTRAINT FK_DEPTNO FOREIGN KEY (Deptno) REFERENCES

DEPT(Deptno));

109. 关系系统中,当操作违反实体完整性、参照完整性和用户定义的完整性约束条件时,一般是如何分别进行处理的?

对于违反实体完整性和用户定义的完整性的操作一般都采用拒绝执行的方式进行处理。而对于违反参照完整性的操作,并不都是简单地拒绝执行,有时要根据应用语义执行一些附加的操作,以保证数据库的正确性。具体的处理可以参见上面第5题或《概论》10.2中相应部分。


发布者:admin,转转请注明出处:http://www.yc00.com/web/1707158765a1480983.html

相关推荐

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信