SQL Server的update语句的工作原理
2015-06-18 17:25
260 查看
update语句的工作原理:先删除后添加
比如执行这个语句:update guestbook set password='123' where user_id=1000; 就是把用户号为1000的用户的密码改成123. 在SQL server执行的机制中,先是把user_id=1000的这条记录删除掉,然后再insert 一条语句,此时的password是 123 ,而不是原来的。我一直以为,update的工作原理是DBMS先找到该条记录,就直接在上面修改某个字段的数据。但是这个是不正确的。
用SQL语句表示的话,如果你要执行 update guestbook set password='123' where user_id=1000; 其实是执行了下面的几条语句(一步一步的):
a:delete from guestbook where user_id=1000
b:insert into guestbook values(1000,'123') (假设这个表就这两个字段)
比如执行这个语句:update guestbook set password='123' where user_id=1000; 就是把用户号为1000的用户的密码改成123. 在SQL server执行的机制中,先是把user_id=1000的这条记录删除掉,然后再insert 一条语句,此时的password是 123 ,而不是原来的。我一直以为,update的工作原理是DBMS先找到该条记录,就直接在上面修改某个字段的数据。但是这个是不正确的。
用SQL语句表示的话,如果你要执行 update guestbook set password='123' where user_id=1000; 其实是执行了下面的几条语句(一步一步的):
a:delete from guestbook where user_id=1000
b:insert into guestbook values(1000,'123') (假设这个表就这两个字段)
相关文章推荐
- MySQL用户及权限设置
- Redis学习第八课:Redis高级实用特性(二)
- ORACLE 10G RAC ASM 恢复例
- Oracle 10g RAC with ASM 安装在 RHEL5上(简版)
- mongodb sharding
- Oracle 中删除数据
- Windows上手动创建oracle11g数据库database
- 建高性能数据库缓存之redis主从复制
- mysql 基本增删改查
- mysql主从复制(windows下)
- ASM实例操作
- MySQL或MariaDB忘记root密码
- Oracle 10g 安装ASM (RHEL5)
- iOS中SQLite的使用
- Oracle、MySql、SQLServer 数据分页查询
- Oracle 字典与视图
- 【连载】数据库审计产品常见缺陷(3)多语句无法有效分割
- Oracle UPDATE 语句
- Oracle 性能报告 AWR
- HBase数据库性能调优(1)