文章分类 - MySql面试题2024
摘要:临时表可以手动删除: DROP TEMPORARY TABLE IF EXISTS temp_tb; 临时表只在当前连接可见,当关闭连接时,MySQL会自动删除表并释放所有空间。因此在不同的连接中可以创建同名的临时表,并且操作属于本连接的临时表。 创建临时表的语法与创建表语法类似,不同之处是增加关键
阅读全文
摘要:视图: 是一种虚拟的表,具有和物理表相同的功能。可以对视图进行增,改,查,操作,视图通常是有一个表或者多个表的行或列的子集。对视图的修改会影响基本表。它使得我们获取数据更容易,相比多表查询。 游标: 是对查询出来的结果集作为一个单元来有效的处理。游标可以定在该单元中的特定行,从结果集的当前行检索一行
阅读全文
摘要:最基本: drop直接删掉表。 truncate删除表中数据,再插入时自增长id又从1开始。 delete删除表中数据,可以加where字句。 (1) DELETE语句执行删除的过程是每次从表中删除一行,并且同时将该行的删除操作作为事务记录在日志中保存以便进行进行回滚操作。TRUNCATE TABL
阅读全文
摘要:优点: 1对数据库的访问,因为视图可以有选择性的选取数据库里的一部分。 2)用户通过简单的查询可以从复杂查询中得到结果。 3)维护数据的独立性,试图可从多个表检索数据。 4)对于相同的数据可产生不同的视图。 缺点: 公众号:DotNet开发跳槽 性能:查询视图时,必须把视图的查询转化成对基本表的查询
阅读全文
摘要:(1)存储过程用户在数据库中完成特定操作或者任务(如插入,删除等),函数用于返回特定的数 据。 (2)存储过程声明用procedure,函数用function。 (3)存储过程不需要返回类型,函数必须要返回类型。 (4)存储过程可作为独立的pl-sql执行,函数不能作为独立的plsql执行,必须作为
阅读全文
摘要:优点: 1)存储过程是预编译过的,执行效率高。 2)存储过程的代码直接存放于数据库中,通过存储过程名直接调用,减少网络通讯。 3)安全性高,执行存储过程需要有一定权限的用户。 4)存储过程可以重复使用,可减少数据库开发人员的工作量。 缺点: 移植性差
阅读全文
摘要:存储过程是一个预编译的SQL语句,优点是允许模块化的设计,就是说只需创建一次,以后在该程序中就可以调用多次。如果某次操作需要执行多次SQL,使用存储过程比单纯SQL语句执行要快。 调用: 1)可以用一个命令对象来调用存储过程。 2)可以供外部程序调用,比如:java程序。
阅读全文
摘要:超键:在关系中能唯一标识元组的属性集称为关系模式的超键。一个属性可以为作为一个超键,多个属性组合在一起也可以作为一个超键。超键包含候选键和主键。 候选键:是最小超键,即没有冗余元素的超键。 主键:数据库表中对储存数据对象予以唯一和完整标识的数据列或属性的组合。一个数据列只能有一个主键,且主键的取值不
阅读全文
摘要:如果我们定义了主键(PRIMARY KEY),那么InnoDB会选择主键作为聚集索引、如果没有显式定义主键,则InnoDB会选择第一个不包含有NULL值的唯一索引作为主键索引、如果也没有这样的唯一索引,则InnoDB会选择内置6字节长的ROWID作为隐含的聚集索引(ROWID随着行记录的写入而主键递
阅读全文
摘要:聚合索引(clustered index): 聚集索引表记录的排列顺序和索引的排列顺序一致,所以查询效率快,只要找到第一个索引值记录,其 余就连续性的记录在物理也一样连续存放。聚集索引对应的缺点就是修改慢,因为为了保证表中记录的 物理和索引顺序一致,在记录插入的时候,会对数据页重新排序。 聚集索引类
阅读全文
摘要:触发器是一种特殊的存储过程,主要是通过事件来触发而被执行的。它可以强化约束,来维护数据的完整性和一致性,可以跟踪数据库内的操作从而不允许未经许可的更新和变化。可以联级运算。如,某表上的触发器上包含对另一个表的数据操作,而该操作又会导致该表触发器被触发。
阅读全文