暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

数据分析面试题--数据库篇

叫个Python 2022-03-30
735


一、在MySql中, productname regexp '[1-3]xiaomi'的含义是(A)

  • A、productname匹配"xiaomi字符串前一个字符为1到3"的字符串

  • B、productname匹配"xiaomi字符串前一个字符为1或3"的字符串

  • C、productname匹配"xiaomi重复1到3次"的字符串

  • D、productname匹配"xiaomi重复1或5次"的字符串

二、MySQL服务的默认端口是多少(B)

  • A、3308

  • B、3306

  • C、3679

  • D、6379

  • 注释:用show global variables like 'port'可以看到是3306

三、MySql中使用SELECT语句随机地从表中挑出指定数量的行,可以使用的方法是(D)

  • A、在LIMIT字句中使用RAND()函数指定行数,并用ORDER BY子句定义一个排序规则

  • B、只要使用LIMIT字句定义指定的函数即可,不使用ORDER BY子句

  • C、只要在ORDER BY子句中使用RAND()函数,不使用LIMIT子句

  • D、在ORDER BY子句中使用RAND()函数,并用LIMIT子句定义函数

四、在MySQL中Replace在相同的主键或者唯一键的时候相当于以下以下哪个操作?(B)

  • A、INSERT

  • B、DELETE+INSERT

  • C、UPDATE

  • D、其他都不是

  • 注释:replace具备替换拥有唯一索引或者主键索引重复数据的能力,也就是如果使用replace into插入的数据的唯一索引或者主键索引与之前的数据有重复的情况,将会删除原先的数据,然后再进行添加。

五、触发器的作用

  • 触发器是一种特殊的存储过程,主要是通过事件来触发而被执行的。

  • 它可以强化约束,来维护数据的完整性和一致性,可以跟踪数据库内的操作从而不允许未经许可的更新和变化。

  • 可以联级运算。比如,某表上的触发器上包含对另一个表的数据操作,而该操作又会导致该表触发器被触发

六、什么是存储过程?用什么来调用

  • 存储过程是一个预编译的SQL语句,优点是允许模块化的设计,就是说只需创建一次,以后在该程序中就可以调用多次。如果某操作需要执行多次SQL,使用存储过程比单纯SQL语句执行要快。可以用call调用命令对象来调用存储过程

七、索引的作用?它的优缺点是什么?

  • 索引就是一种特殊的查询表,数据库的搜索引擎可以利用它加速对数据的检索。很类似现实生活中书的目录,不需要查询整本书内容就可以找到想要的数据。索引可以是唯一的,创建索引允许指定单个列或者多个列。缺点是它减慢了数据录入的速度,同时也增加了数据库的尺寸大小。

八、什么是内存泄漏?

  • 一般我们所说的内存泄漏指的是堆内存的泄露。堆内存是程序从堆中为其分配的,大小任意的,使用完后要显示释放内存。当应用程序用关键字new等创建对象时,就从堆中为它分配一块内存,使用完后程序调用free或者delete释放该内存,否则就说该内存不能被使用,我们就说该内存被泄漏了

九、维护数据库的完整性和一致性,你喜欢用触发器还是自写业务逻辑?为什么?

  • 我是这样做的。尽可能使用约束,如check,主键,外键,非空等来约束,这样做效率最高,也最方便。其次是使用触发器,这种方法可以保证,无论是什么业务系统访问数据库都可以保证数据的完整性和一致性。最后考虑的是自写业务逻辑,但这样做起来麻烦,编程复杂,效率低下。

十、什么是事务?

  • 事务就是被绑定在一起作为一个逻辑工作单元的SQL语句分组,如果任何一个语句操作失败,那么整个操作就被失败,之后操作就会回滚到操作前的状态


扫描二维码

关注我们

查阅更多内容




文章转载自叫个Python,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论