数据库面试题总结二(varchar / char、delete / drop / truncate、MyISAM / InnoDB、优化方法)

本文总结了数据库面试中的常见问题,包括char和varchar的区别,delete、drop、truncate操作的区别,以及MyISAM和InnoDB存储引擎的差异。此外,还探讨了数据库优化方法,如索引使用和查询优化技巧,以提升数据库性能。
摘要由CSDN通过智能技术生成

目录

char 和 varchar区别、numeric

delete、drop 和 truncate 区别

MyISAM 和 InnoDB 区别

数据库优化方式


数据库面试题总结一(范式、视图、索引、授权、事务、触发器、连接方式)

https://blog.csdn.net/zhsihui429/article/details/86530609

 

char 和 varchar区别、numeric

  • char(n):固定长度的字符串,用户指定长度n
  • varchar(n):可变长度的字符串,用户指定最大长度n

例子:属性A的类型是char(10),若为此属性存入“Avi”,那么该字符串后会追加7个空格来使其达到10个字符的串长度。反之,如果属性B的类型是varchar(10),在属性B中存放字符串“Avi”,则不会增加空格。

当比较两个char类型的值时,如果它们的长度不同,在比较之前会自动在短值后加上额外的空格以使它们的长度一致。

但当比较一个char类型和一个varchar类型时,不一定会在varchar后加上额外的空格以使长度一致,取决于数据库系统,因此,即使都存放“Avi”,A = B的比较也可能返回假。

建议使用varchar类型来存放字符串。

  • numeric(p,d):定点数,精度由用户指定。这个数有p位数字(加上一个符号位,即不含符号位)其中d位数字在小数点右边

 

delete、drop 和 truncate 区别

【1】delete

  • delete是DML,执行delete操作时,每次从表中删除一行,并且同时将该行的的删除操作记录在redo和undo表空间(日志)中以便进行回滚(rollback)和重做操作,但要注意表空间要足够大,事务需要手动提交(commit)操作才能生效,可以通过rollback撤消操作。如果有相应的 tigger,执行的时候将被触发。
  • delete 可对 table 和 view 操作只删除数据。delete 操作不会减少表或索引所占用的空间。
  • delete可根据条件删除表中满足条件的数据,如果不指定where子句,那
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值