1.drop,delete与truncate的区别

相同点:

truncate和不带where子句的delete,以及drop都会删除表内的数据

不同点:

  • truncate会清除表数据并重置id从1开始,delete就只删除记录,drop可以用来删除表或数据库并且将表所占用的空间全部释放

  • truncate和delete只删除数据不删除表的结构。drop语句将删除表的结构被依赖的约(constrain),触发器(trigger),依赖于该表的存储过程/函数将保留,但是变为 invalid 状态。

  • 速度上一般来说: drop> truncate > delete

  • 使用上,想删除部分数据行用 delete,想删除表用 drop,想保留表而将所有数据删除,如果和事务无关,用truncate即可。如果和事务有关,或者想触发trigger,还是用delete。

  • delete是DML语句,不会自动提交。drop/truncate都是DDL语句,执行后会自动提交。

2.mysql里记录货币用什么字段类型好

NUMERIC 和DECIMAL 类型被MySQL实现为同样的类型,这在SQL92标准允许。他们被用于保存值,该值的准确精度是极其重要的值,例如与金钱有关的数据。

DECIMAL和NUMERIC值作为字符串存储,而不是作为二进制浮点数,以便保存那些值的小数精度。

3.MySQL中myisam与innodb的区别

  • InnoDB支持事务,而MyISAM不支持事务

  • InnoDB支持行级锁,而MyISAM支持表级锁

  • InnoDB支持MVCC, 而MyISAM不支持

  • InnoDB支持外键,而MyISAM不支持

  • InnoDB不支持全文索引,而MyISAM支持。

  • InnoDB不能通过直接拷贝表文件的方法拷贝表到另外一台机器, myisam 支持

  • InnoDB表支持多种行格式, myisam 不支持

  • InnoDB是索引组织表, myisam 是堆表

4.事务的四个特性及含义

数据库事务transanction正确执行的四个基本要素:ACID,原子性(Atomicity)、一致性(Correspondence)、隔离性(Isolation)、持久性(Durability)。

原子性: 整个事务中的所有操作,要么全部完成,要么全部不完成,不可能停滞在中间某个环节。事务在执行过程中发生错误,会被回滚(Rollback)到事务开始前的状态,就像这个事务从来没有执行过一样。

一致性: 在事务开始之前和事务结束以后,数据库的完整性约束没有被破坏。

隔离性: 隔离状态执行事务,使它们好像是系统在给定时间内执行的唯一操作。如果有两个事务,运行在相同的时间内,执行 相同的功能,事务的隔离性将确保每一事务在系统中认为只有该事务在使用系统。这种属性有时称为串行化,为了防止事务操作间的混淆,必须串行化或序列化请 求,使得在同一时间仅有一个请求用于同一数据。

持久性: 在事务完成以后,该事务所对数据库所作的更改便持久的保存在数据库之中,并不会被回滚。

5.MYSQL相比于其他数据库有哪些特点?

MySQL是一个小型关系型数据库管理系统,开发者为瑞典MySQL AB公司,现在已经被Sun公司收购,支持FreeBSD、Linux、MAC、Windows等多种操作系统与其他的大型数据库例如Oracle、DB2、SQL Server等相比功能稍弱一些。其特点有:

  • 可以处理拥有上千万条记录的大型数据;

  • 支持常见的SQL语句规范;

  • 可移植行高,安装简单小巧;

  • 良好的运行效率,有丰富信息的网络支持;

  • 调试、管理,优化简单(相对其他大型数据库)。

6.视图的作用,视图可以更改么?

视图是虚拟的表,与包含数据的表不一样,视图只包含使用时动态检索数据的查询;不包含任何列或数据。使用视图可以简化复杂的sql操作,隐藏具体的细节,保护数据;视图创建后,可以使用与表相同的方式利用它们。

视图不能被索引,也不能有关联的触发器或默认值,如果视图本身内有order by 则对视图再次order by将被覆盖。

7.存储过程与触发器的区别

触发器与存储过程非常相似,触发器也是SQL语句集,两者唯一的区别是触发器不能用EXECUTE语句调用,而是在用户执行Transact-SQL语句时自动触发(激活)执行。

触发器是在一个修改了指定表中的数据时执行的存储过程。通常通过创建触发器来强制实现不同表中的逻辑相关数据的引用完整性和一致性。由于用户不能绕过触发器,所以可以用它来强制实施复杂的业务规则,以确保数据的完整性。

触发器不同于存储过程,触发器主要是通过事件执行触发而被执行的,而存储过程可以通过存储过程名称名字而直接调用。当对某一表进行诸如UPDATE、INSERT、DELETE这些操作时,SQLSERVER就会自动执行触发器所定义的SQL语句,从而确保对数据的处理必须符合这些SQL语句所定义的规则。

8.索引的作用?和它的优点缺点是什么?

索引就是一种特殊的查询表,数据库的搜索引擎可以利用它加速对数据的检索。它很类似与现实生活中书的目录,不需要查询整本书内容就可以找到想要的数据。

索引可以是唯一的,创建索引允许指定单个列或者是多个列。缺点是它减慢了数据录入的速度,同时也增加了数据库的尺寸大小。

9.union 与union all的区别

union 在进行表连接后会筛选掉重复的记录,所以在表连接后会对所产生的结果集进行排序运算,删除重复的记录再返回结果。union all 则会显示重复结果,只是简单的两个结果合并并返回.所以效率比union高,在保证没有重复数据的情况下用union all.

10. SQL语言包括哪几部分?每部分都有哪些操作关键字?

SQL语言包括数据定义(DDL)、数据操纵(DML),数据控制(DCL)和数据查询(DQL)四个部分。

  • 数据定义:Create Table,Alter Table,Drop Table, Craete/Drop Index等

  • 数据操纵:Select ,insert,update,delete,

  • 数据控制:grant,revoke

  • 数据查询:select

来源:blog.csdn.net/Black1499/article/details/84945702

推荐好文>>【练手项目】基于SpringBoot的ERP系统,自带进销存+财务+生产功能>>分享一套基于SpringBoot和Vue的企业级中后台开源项目,代码很规范!>>能挣钱的,开源 SpringBoot 商城系统,功能超全,超漂亮!

10道经典MySQL面试题相关推荐

  1. 18道经典MySQL面试题,祝您升职加薪

    1.MySQL的复制原理以及流程 保证主服务器(Master)和从服务器(Slave)的数据是一致性的,向Master插入数据后,Slave会自动从Master把修改的数据同步过来(有一定的延迟),通 ...

  2. 【Java进阶营】10道经典java面试题_实习生必问

    第一,谈谈final, finally, finalize的区别. final?修饰符(关键字)如果一个类被声明为final,意味着它不能再派生出新的子类,不能作为父类被继承.因此一个类不能既被声明为 ...

  3. 10题经典Redis面试题

    新增: 标题 链接 MySql面试16连问 https://blog.csdn.net/m0_52256357/article/details/126497432?spm=1001.2014.3001 ...

  4. 后端开发10道经典面试题的剖析, 技术方向如何决定职业方向

    10道经典面试题的剖析, 技术方向如何决定职业方向 1. time_wait, close_wait如何解决? 2. 服务器接入抖动如何解决? 3. malloc的实现原理 视频讲解如下,点击观看: ...

  5. 厉害了,关于String的10道经典面试题

    转载自 厉害了,关于String的10道经典面试题 1.String是基本数据类型吗? 2.String是可变的话? 3.怎么比较两个字符串的值一样,怎么比较两个字符串是否同一对象? 4.switch ...

  6. 20道经典Redis面试题

    前言 整理了20道经典Redis面试题,希望对大家有帮助. 1. 什么是Redis?它主要用来什么的? Redis,英文全称是Remote Dictionary Server(远程字典服务),是一个开 ...

  7. 30道经典SQL面试题讲解(11-20)

    本篇节选自书籍<对比Excel,轻松学习SQL数据分析>一书,主要讲解数据分析面试中常见的30道SQL面试题.1-10题见:30道经典SQL面试题讲解(1-10) 11 行列互换 现在我们 ...

  8. 71道经典Android面试题和答案,重要知识点都包含了

    更多源码下载,请关注微信公众号:互联网技术分享 面试题 1.        下列哪些语句关于内存回收的说明是正确的? (b ) A. 程序员必须创建一个线程来释放内存   B.内存回收程序负责释放无用 ...

  9. 这八道经典指针笔试题你都会做嘛?

    本文详细介绍了八大指针经典笔试题,内涵盖指针大部分的用法, 全部了解掌握其原理之后对指针的学习大有帮助!!! 对指针掌握 也就掌握了内存,C语言也就没有什么更绕的了 详解八道经典指针笔试题 一.八道经 ...

最新文章

  1. 回收站功能在 Linux 中的实现
  2. pwm波如何控制电机代码_PWM波控制720电机
  3. opencv中,c和c++版本区别体验
  4. 普林斯顿公开课 算法1-5:算法理论
  5. 1.6 语言模型和序列生成
  6. 软件工程 speedsnail 第二次冲刺1次
  7. 教你彻底卸载Ubuntu双系统,去污不残留
  8. 闹钟流程_自考专升本1月份统考粤康码申报流程
  9. SQL Server数据导入导出的几种方法
  10. Androidstudio控制台分层输出接口日志.类似BeJSON,HiJson格式化JSON
  11. 云桌面优缺点_传统PC与云桌面办公的优劣势对比
  12. 【2020/05/29 开庭】韦东山:闲鱼与盗版更配,坚决打击盗版,起诉到底绝不和解!
  13. python根据时间序列画折线图_Python如何根据时间序列数据作图
  14. php市场占比 2019,2019年家电市场份额占比排名
  15. re学习笔记(57)BUUCTF-re-[FlareOn4]login
  16. SMART-DOC使用总结
  17. PhantomJS将网页保存为图片
  18. 【NDN实验】ndnSIM: NDN simulator for NS-3 全文翻译
  19. matlab单边带调制仿真,000单边带调制MATLAB模拟仿真
  20. 最小二乘,最大似然,最大后验,查准率与查全率

热门文章

  1. 不买iPhone11的四大理由,最后一个扎心了
  2. 网易有道上市首日股价跌26% 市值达14亿美元
  3. 俞渝长文手撕李国庆,爆出“同性恋梅毒”秘辛,编剧都写不出来的剧情
  4. 王思聪都觉得“贵的离谱” 给成都某日料店怒打1星差评:亲测难吃
  5. 三大运营商5G预约用户数近9百万 5G商用进入倒计时
  6. ZAO回应被约谈...
  7. 摘得“2019最佳智能手机”大奖的华为P30系列究竟比iPhone XS系列强在哪
  8. 微信7.0.4 iOS版发布:这项经典功能正式下线!
  9. Facebook去年从中国获50亿美元广告收入 占营收10%
  10. Spring技术原理之Bean生命周期