sql中的update操作时 如果没有用到where子句会怎么样?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sql中的update操作时 如果没有用到where子句会怎么样?相关的知识,希望对你有一定的参考价值。

比如 update tabName set colName='jasdhfka'
手边没有环境 请帮帮忙

where是一个条件查询,只有满足你所需要的条件才予以处理
update tabName set colName='jasdhfka' 是更新整个表的colName字段 而如果我要限制更新某个字段就用到where
update tabName set colName='jasdhfka'
where name='遗忘之花再开时' 更新名为遗忘之花再开时的那条记录
参考技术A 如果你不指定where条件,那么就会对colname字段的所有数据进行修改,为'jasdhfka' 参考技术B 这样操作的话,tabname表的colname字段的所有内容都变成了 jasdhfka
所以还是慎重操作
参考技术C 将所有记录的colName字段更新为‘jasdhfka’ 参考技术D 楼上的回答都正确....

oracle数据库中sql%notfound的用法

SQL%NOTFOUND 是一个布尔值。与最近的sql语句(update,insert,delete,select)发生交互,当最近的一条sql语句没有涉及任何行的时候,则返回true。否则返回false。这样的语句在实际应用中,是非常有用的。例如要update一行数据时,如果没有找到,就可以作相应操作。如:

begin

  update table_name set salary = 10000 where emp_id = 10;

  if sql%notfound then

   insert into table_name (id,name,salary)values("","","") ;

  end if;

end;

当update emp_id为10的这行记录,如果update影响条数为0,则插入一条数据。

 

SQL%FOUND 的用法与sql%notfound用法相反,也是与最近的sql语句发生交互,如果影响行数大于0条,则为true

否则为false。

 

SQL%ROWCOUNT在dml语句执行前是null,执行后,对于select into语句,执行成功则值为1,不成功则值为0。

以上是关于sql中的update操作时 如果没有用到where子句会怎么样?的主要内容,如果未能解决你的问题,请参考以下文章

Java中sql语句的引号问题

SQL中使用UPDATE更新数据时一定要记得WHERE子句

ibatis 执行sql的事务控制问题

mssql sqlserver update delete表别名用法简介

用什么方法可以防止误删数据?

SQL-Server中NULL值的问题