八股文--数据库

1.不用游标的SQL语句有哪些?

  1. 说明性语句
  2. 数据定义语句
  3. 数据控制语句
  4. 查询结果为单记录的SELECT语句
  5. 非CURRENT形式的UPDATE语句
  6. 非CURRENT形式的DELETE语句
  7. INSERT语句

2.存在R=(A,B,C,D,E),F={A→B,B→C,CE→D},则R的候选码为( )

AD→E

BC→E

DC→AB

DB→A

解答: 只出现在→左边的一定是候选码

只出现在→右边的一定不是候选码

→左右都不出现的一定是候选码

→左右都出现的不一定是候选码

查看与每个其他属性结合成的子集能否推出其他所有属性,找出元素数量最少的即为候选码。

3.创建索引

创建索引的语句是create index indexname on tablename (username (length)) 其中若是char和varchar类型,length可以小于字段实际长度(不能大于,若是blob或text类型,必须指定length!)

4.

MYSQL

事务的四大特性: 原子性:

事务包括的所有操作要么全部成功,要么全部失败回滚。


一致性:

事务执行之前和执行之后都必须处于一致性状态。

隔离性:

和隔离级别相关,如:read committed ,一个事务只能读到已经提交的修改。

持久性:

一个事务一旦被提交了,那么对数据库中的数据的改变都是持久的。

事务的隔离级别:

脏读:读取了别人没提交的事务。 不可重复读:读取多次,返回不同的值。 幻读:当读某个事务时,另一个事务又添加了某些事务。

四种隔离级别: 1.串行化:强制事务排序。 2.可重复读:默认隔离级别,确保同一事物并发下结果相同。 3.读已提交:事务只能看见已经提交的数据。(避免脏读) 4.读未提交:事务可以看见其他未提交的执行结果。

索引(B+树):用于提高数据库访问速度。

优点:加快查找速度

加快表与表之间的连接。

缺点: 建立索引需要占用内存。

会降低表的增删改的效率,因为每次对表记录进行增删改,需要进行动态维护索引。导致增删改变长。

索引作用: 经常用于查询字段。 经常用于连接的字段建立索引,加快连接的速度。 经常需要排序的字段建立索引,因为索引已经排好序,可以加快排序查询速度。

hash索引和b+索引的区别: hash索引不支持排序,因为hash表无序 哈希不支持范围查找和模糊搜索 hash会又hash冲突,性能不稳定。

B+树比B树更加适合实现数据库索引? 因为B+树非叶子节点不存具体信息,节省空间,也加快了查找速度。 因为B+树所有信息都在叶子节点上,方便扫库,也方便范围查找。 每一个叶子节点的查询开销相同,所有性能也比较稳定。

索引的分类:1.主键索引:名为

全部评论

相关推荐

人间雪:简历最好只要一页,除非你牛逼到一页都写不下了
点赞 评论 收藏
分享
太难了,双9bg也被刷
投递韶音科技等公司10个岗位
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务