Mysql笔记(四)

数据插入时,需要特别注意的:

  1. 在插入数据的时候,一般会明确出每个列,这样的话数据的顺序对应清晰,当表结构发生改变的时候,你的SQL语句还可以使用。
  2. 数据库经常被多个用户访问,对处理什么请求以及用什么次序处理进行管理是Mysql任务。INSERT操作可能很耗时(当需要更新的索引更别多的时候)而却它可能降低等待处理的SELECT语句的性能。可以使用INSERT LOW_PRIORITY INTO 来降低INSERT 语句的优先级。
  3. INSERT语句支持插入检索出来的数据。

数据更新时,需要特别注意的。

  1. UPDATE语句总是以要更新的表作的名字开始,以WHERE作为语句的结束。(如果不加过滤条件的话,就会更新整个表。这显然不是我们想要的结果)
  2. 如果使用UPDATE更新多行数据,并且在更新这些行中,出现了错误。则整个UPDATE操作被取消。假设希望设置UPDATE语句中,即使发生了错误也继续执行的话。可以使用IGNORE关键字。

数据删除时,需要特别注意的。

  1. 如果想要删除表中所有的数据的话,不要使用DELETE。可以使用TRUNCATE TABLE语句,他完成相同的工作。但是速度更快(TRUNCATE其实是删除原来的表,然后重新建立一个表。而不是一行一行的删除数据)

视图相关介绍

  1. 视图是虚拟的表,与包含数据的表不同。视图只包含动态检索出来的数据。在一些复杂的查询语句,都是需要对表结构非常清楚。这个时候,我们就可以使用视图,创建虚拟表从而简化查询语句。也可以使用视图来重新格式化数据和过滤数据。再次组合一张简易操作的虚拟表。但是视图仅仅是用来查看存储在别处的数据的一种措施。视图本身不包含数据。它返回的数据都是从其他表中检索出来的。所以性能相对来说比较差。
  2. 视图的创建 (CREATE VIEW viewname AS sql)

CREATE VIEW tradition4view AS SELECT prod_id, prod_name, prod_price FROM products WHERE vend_id in (1001,1002) UNION ALL SELECT prod_id, prod_name, prod_price FROM products WHERE prod_price<=5

你可能感兴趣的:(Mysql笔记(四))