对SQL查找的应用

首先要了解一下视图的作用以及应用:

视图是一个虚拟的表,不同于直接操作数据表,视图是依据SELECT语句来创建的(会在下面具体介绍),所以操作视图时会根据创建视图的SELECT语句生成一张虚拟表,然后在这张虚拟表上做SQL操作。

创建视图的语句是:CREATE VIEW <视图名称>(<列名1>,<列名2>,...) AS

创建出满足下述三个条件的视图(视图名称为 ViewPractice5_1)。使用 product(商品)表作为参照表,假设表中包含初始状态的 8 行数据。

  • 条件 1:销售单价大于等于 1000 日元。
  • 条件 2:登记日期是 2009 年 9 月 20 日。
  • 条件 3:包含商品名称、销售单价和登记日期三列。

对SQL查找的应用_第1张图片

如上图就是根据条件创建视图。

对SQL查找的应用_第2张图片

 在上述程序中本来想进行整体赋值的,结果显示1175错误,通过查找找出错误原因及解决结果

 Error Code: 1175. You are using safe update mode and you tried to update a table without a WHERE that uses a KEY column. Cannot use range access on index 'PRIMARY' due to type or collation conversion on field 'product_id' To disable safe mode, toggle the option in Preferences -> SQL Editor and reconnect.、

因为是MySQL Workbench的默认的安全设置是不能批量更新表的。当要执行的SQL语句是进行批量更新或者删除的时候就会提示这个错误。

解决方法如下:

打开Workbench的菜单[Edit]->[Preferences...]
切换到[SQL Editor]页面
把[Forbid UPDATE and DELETE statements without a WHERE clause (safe updates)]之前的对勾去掉
点击[OK]按钮
最后记得要重启一下sql editor,建立一个新的连接就可以了。
 

你可能感兴趣的:(sql,数据库,database,mysql)