加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程 > 正文

口试中有哪些经典的数据库题目?

发布时间:2018-08-15 15:54:32 所属栏目:编程 来源:程序员之言
导读:技能沙龙 | 邀您于8月25日与国美/AWS/转转三位专家配合切磋小措施电商拭魅战 一、为什么用自增列作为主键 1、假如我们界说了主键(PRIMARY KEY),那么InnoDB会选择主键作为聚积索引、假如没有显式界说主键,则InnoDB会选择第一个不包括有NULL值的独一索引作为

6、Prepared StatementsPrepared Statements很像存储进程,是一种运行在靠山的SQL语句荟萃,我们可以从行使 prepared statements 得到许多甜头,无论是机能题目照旧安详题目。Prepared Statements 可以搜查一些你绑定好的变量,这样可以掩护你的措施不会受到“SQL注入式”进攻

7、垂直分表

8、选择正确的存储引擎

二十二、key和index的区别

1、key 是数据库的物理布局,它包括两层意义和浸染,一是束缚(侧重于束缚和类型数据库的布局完备性),二是索引(帮助查询用的)。包罗primary key, unique key, foreign key 等

2、index是数据库的物理布局,它只是帮助查询的,它建设时会在其它的表空间(mysql中的innodb表空间)以一个相同目次的布局存储。索引要分类的话,分为前缀索引、全文本索引等;

二十三、Mysql 中 MyISAM 和 InnoDB 的区别有哪些?

区别:

1、InnoDB支持事宜,MyISAM不支持,对付InnoDB每一条SQL说话都默认封装成事宜,自动提交,这样会影响速率,以是最好把多条SQL说话放在begin和commit之间,构成一个事宜;

2、InnoDB支持外键,而MyISAM不支持。对一个包括外键的InnoDB表转为MYISAM会失败;

3、InnoDB是聚积索引,数据文件是和索引绑在一路的,必必要有主键,通过主键索引服从很高。可是帮助索引必要两次查询,先查询到主键,然后再通过主键查询到数据。因此,主键不该该过大,由于主键太大,其他索引也城市很大。而MyISAM长短聚积索引,数据文件是疏散的,索引生涯的是数据文件的指针。主键索引和帮助索引是独立的。

4、InnoDB不生涯表的详细行数,执行select count(*) from table时必要全表扫描。而MyISAM用一个变量生涯了整个表的行数,执行上述语句时只必要读出该变量即可,速率很快;

5、Innodb不支持全文索引,而MyISAM支持全文索引,查询服从上MyISAM要高;

怎样选择:

1、是否要支持事宜,假如要请选择innodb,假如不必要可以思量MyISAM;

2、假如表中绝大大都都只是读查询,可以思量MyISAM,假如既有读写也挺频仍,请行使InnoDB。

3、体系奔溃后,MyISAM规复起来更坚苦,可否接管;

4、MySQL5.5版本开始Innodb已经成为Mysql的默认引擎(之前是MyISAM),声名其上风是有目共睹的,假如你不知道用什么,那就用InnoDB,至少不会差。

二十四、数据库表建设留意事项

1、字段名及字段配制公道性

  • 剔除相关不亲近的字段;
  • 字段定名要有法则及相对应的寄义(不要一部门英文,一部门拼音,尚有相同a.b.c这样不明寄义的字段);
  • 字段定名只管不要行使缩写(大大都缩写都不能明晰字段寄义);
  • 字段不要巨细写混用(想要具有可读性,多个英文单词可行使下划线情势毗连);
  • 字段名不要行使保存字可能要害字;
  • 保持字段名和范例的同等性;
  • 稳重选择数字范例;
  • 给文本字段留足余量;

2、体系非凡字段处理赏罚及建成后提议

  • 添加删除标志(譬喻操纵人、删除时刻);
  • 成立版本机制;

3、表布局公道性设置

  • 多型字段的处理赏罚,就是表中是否存在字段可以或许解析成更小独立的几部门(譬喻:人可以分为汉子和姑娘);
  • 多值字段的处理赏罚,可以将表分为三张表,这样使得检索和排序越发有调剂,且担保数据的完备性!

4、其余提议

  • 对付大数据字段,独立表举办存储,以便影响机能(譬喻:简介字段);
  • 行使varchar范例取代char,由于varchar会动态分派长度,char指定长度是牢靠的;
  • 给表建设主键,对付没有主键的表,在查询和索引界说上有必然的影响;
  • 停止表字段运举动null,提议配置默认值(譬喻:int范例配置默认值为0)在索引查询上,服从立显;
  • 成立索引,最好成立在独一和非空的字段上,成立太多的索引对后期插入、更新都存在必然的影响(思量现实环境来建设);

【编辑保举】

  1. 数据库插入可能更新大批量数据的机能优化
  2. 静默错误:Oracle数据库是怎样应对和处理赏罚的 ?
  3. 【器材】数据库计划中的6个最佳实践步调
  4. 为什么MySQL存储进程、函数和触发器对机能欠好
  5. SQL Server与MySQL中排序法则与字符集相干常识的一点总结
【责任编辑:庞桂玉 TEL:(010)68476606】
点赞 0

(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读