没有合适的资源?快使用搜索试试~ 我知道了~
PHP面试之Mysql面试题集.docx
需积分: 3 0 下载量 106 浏览量
2024-10-11
11:22:42
上传
评论
收藏 33KB DOCX 举报
温馨提示
PHP面试题大全
资源推荐
资源详情
资源评论
Mysql
1.8 (mysql)请写出数据类型(int char varchar datetime text)的意思; 请问 varchar 和 char 有什
么区别;
int : 数值类型
char : 固定长度字符串类型
varchar : 可变长度字符串类型
datetime : 时期时间类型
text : 文本类型
varchar 和 char 有什么区别:
a. char 长度是固定的,不管你存储的数据是多少他都会都固定的长度。
而 varchar 则处可变长度但他要在总长度上加 1 字符,这个用来存储位置。
b. char 固定长度,所以在处理速度上要比 varchar 快速很多,但是浪费存储空间,
所以对存储不大,但在速度上有要求的可以使用 char 类型,反之可以用 varchar 类型来实例。
mysql 中 IFNULL 控制流函数;IFNULL()
IFNULL():
(1)它有两个参数,并且对第一个参数进行判断。
(2)如果第一个参数不是 NULL,函数就会向调用者返回第一个参数;如果是 NULL,将返回第二
个参数;
SELECT IFNULL(1,2), IFNULL(NULL,10), IFNULL(4*NULL,'false');
结果:"1 10 false"
二、数据库部分
1. 常见的关系型数据库管理系统产品有?
答:Oracle、SQL Server、MySQL、Sybase、DB2、Access 等。
2. SQL 语言包括哪几部分?每部分都有哪些操作关键字?
答:SQL 语言包括数据定义(DDL)、数据操纵(DML),数据控制(DCL)和数据查询(DQL)四个部
分。
数据定义:Create Table,Alter Table,Drop Table, Craete/Drop Index 等
数据操纵:Select ,insert,update,delete,
数据控制:grant,revoke
数据查询:select
3. 完整性约束包括哪些?
答:数据完整性(Data Integrity)是指数据的精确(Accuracy)和可靠性(Reliability)。
分为以下四类:
1) 实体完整性:规定表的每一行在表中是惟一的实体。
2) 域完整性:是指表中的列必须满足某种特定的数据类型约束,其中约束又包括取值范围、
精度等规定。
3) 参照完整性:是指两个表的主关键字和外关键字的数据应一致,保证了表之间的数据的
一致性,防止了数据丢失或无意义的数据在数据库中扩散。
4) 用户定义的完整性:不同的关系数据库系统根据其应用环境的不同,往往还需要一些特
殊的约束条件。用户定义的完整性即是针对某个特定关系数据库的约束条件,它反映某一具
体应用必须满足的语义要求。
与表有关的约束:包括列约束(NOT NULL(非空约束))和表约束(PRIMARY KEY、foreign key、
check、UNIQUE) 。
4. 什么是事务?及其特性?
答:事务:是一系列的数据库操作,是数据库应用的基本逻辑单位。
事务特性:
(1)原子性:即不可分割性,事务要么全部被执行,要么就全部不被执行。
(2)一致性或可串性。事务的执行使得数据库从一种正确状态转换成另一种正确状态
(3)隔离性。在事务正确提交之前,不允许把该事务对数据的任何改变提供给任何其他事
务,
(4) 持久性。事务正确提交后,其结果将永久保存在数据库中,即使在事务提交后有了其
他故障,事务的处理结果也会得到保存。
或者这样理解:
事务就是被绑定在一起作为一个逻辑工作单元的 SQL 语句分组,如果任何一个语句操作失
败那么整个操作就被失败,以后操作就会回滚到操作前状态,或者是上有个节点。为了确保
要么执行,要么不执行,就可以使用事务。要将有组语句作为事务考虑,就需要通过 ACID
测试,即原子性,一致性,隔离性和持久性。
5. 什么是锁?
答:数据库是一个多用户使用的共享资源。当多个用户并发地存取数据时,在数据库中就
会产生多个事务同时存取同一数据的情况。若对并发操作不加控制就可能会读取和存储不正
确的数据,破坏数据库的一致性。
加锁是实现数据库并发控制的一个非常重要的技术。当事务在对某个数据对象进行操作前,
先向系统发出请求,对其加锁。加锁后事务就对该数据对象有了一定的控制,在该事务释放
锁之前,其他的事务不能对此数据对象进行更新操作。
基本锁类型:锁包括行级锁和表级锁
6. 什么叫视图?游标是什么?
答:视图是一种虚拟的表,具有和物理表相同的功能。可以对视图进行增,改,查,操作,
视图通常是有一个表或者多个表的行或列的子集。对视图的修改不影响基本表。它使得我们
获取数据更容易,相比多表查询。
游标:是对查询出来的结果集作为一个单元来有效的处理。游标可以定在该单元中的特定
行,从结果集的当前行检索一行或多行。可以对结果集当前行做修改。一般不使用游标,但
是需要逐条处理数据的时候,游标显得十分重要。
7. 什么是存储过程?用什么来调用?
答:存储过程是一个预编译的 SQL 语句,优点是允许模块化的设计,就是说只需创建一次,
以后在该程序中就可以调用多次。如果某次操作需要执行多次 SQL,使用存储过程比单纯
SQL 语句执行要快。可以用一个命令对象来调用存储过程。
8. 索引的作用?和它的优点缺点是什么?
答:索引就一种特殊的查询表,数据库的搜索引擎可以利用它加速对数据的检索。它很类似
与现实生活中书的目录,不需要查询整本书内容就可以找到想要的数据。索引可以是唯一的,
创建索引允许指定单个列或者是多个列。缺点是它减慢了数据录入的速度,同时也增加了数
据库的尺寸大小。
9. 如何通俗地理解三个范式?
答:第一范式:1NF 是对属性的原子性约束,要求属性具有原子性,不可再分解;
第二范式:2NF 是对记录的惟一性约束,要求记录有惟一标识,即实体的惟一性; 第三范
式:3NF 是对字段冗余性的约束,即任何字段不能由其他字段派生出来,它要求字段没有冗
余。。
10. 什么是基本表?什么是视图?
答:基本表是本身独立存在的表,在 SQL 中一个关系就对应一个表。 视图是从一个或几个
基本表导出的表。视图本身不独立存储在数据库中,是一个虚表
11. 试述视图的优点?
答:(1) 视图能够简化用户的操作 (2) 视图使用户能以多种角度看待同一数据; (3) 视图
为数据库提供了一定程度的逻辑独立性; (4) 视图能够对机密数据提供安全保护。
12. NULL 是什么意思
答:NULL 这个值表示 UNKNOWN(未知):它不表示“”(空字符串)。对 NULL 这个值的任何比较
都会生产一个 NULL 值。您不能把任何值与一个 NULL 值进行比较,并在逻辑上希望获得一
个答案。
使用 IS NULL 来进行 NULL 判断
13. 主键、外键和索引的区别?
主键、外键和索引的区别
定义:
主键--唯一标识一条记录,不能有重复的,不允许为空
外键--表的外键是另一表的主键, 外键可以有重复的, 可以是空值
索引--该字段没有重复值,但可以有一个空值
作用:
主键--用来保证数据完整性
外键--用来和其他表建立联系用的
索引--是提高查询排序的速度
剩余18页未读,继续阅读
资源评论
天涯学馆
- 粉丝: 1960
- 资源: 346
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- Objective-C多线程与并发编程基础及其实现
- 一图通F103核心板原理图+说明-2024-10-20
- UFS Explorer 专业恢复 7.0-10.10历史版本更新内容.txt
- C语言-leetcode题解之36-valid-sudoku.c
- C语言-leetcode题解之35-search-insert-position.c
- C语言-leetcode题解之34-search-for-a-range.c
- C语言-leetcode题解之33-search-in-rotated-sorted-array.c
- C语言-leetcode题解之32-longest-valid-parentheses.c
- C语言-leetcode题解之28-implement-strstr.c
- C语言-leetcode题解之27-remove-element.c
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功