lstd.net
当前位置:首页 >> orAClE中upDAtE的使用 >>

orAClE中upDAtE的使用

update [表名] set [姓名]='姓名',[性别]='性别' where [账号]='账号'; []:里面的是字段名或表名'':里面的是内容.

update B set bz=A.bz from B,A where A.jh = B.jh and A.rq = B.rq 你那是Oracle把 试试这个 update b set b.bz=(select bz from a where a.jh = a.jh and a.rq = b.rq) 我刚试过,数据更新正确.

1. 会加锁2. 这个一般这样写的beginselect nvl(id,-1) into v_id from student where id = 3 for update;exception when no_data_found then v_id =-1; end;就是用异常去写,以前刚学的时候也跟楼主一样写法,不行的哈.没得到数据跟得到的是null不是一回事.

update 表名 set 字段名=需要的值 where 字段=条件where中的条件最好是主键,oracle自动给主键加索引,这样数据库大的时候能快的多.建议你跟踪下你的语句,有时在SQL执行计划中观察你的SQL虽然用了索引,但是正常执行时,由于数据量的问题,Oracle会认为全表扫描会比用索引快,所以就全表扫描了,你不如加上强制索引试试.就字段这么多

sqlServer update table1 set A = "final" + A where B = "admin" oracleupdate table1 set A = ("final" || A) where B = "admin"

你的语句太混乱了,按照你的意思你需要明确几点.1.使用b表数据更新a表,那么where条件是什么,也就是说,更新a表中哪些数据,用b表中的哪些数据更新,二者的关系是什么.从你的语句中我看不出b表和a表的关联.2.找到关联条件后,

SQL Server: update 乙表 set B2 = 甲表.B1 from 甲表 where 乙表.A2 = 甲表.A1如果是Oracle,语法不一样.

语法错误.oracle中没有update set from的写法.标准写法是update table set

update b set b.name = (select a.name from a where a.no=b.no);

update 表名 set 字段=新字段值 where 条件 ; commit;plsql developer中按F8执行,或sqlplus中直接回车

网站首页 | 网站地图
All rights reserved Powered by www.lstd.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com