不同数据库update实现多表更新.doc

上传人:sk****8 文档编号:3555587 上传时间:2019-06-04 格式:DOC 页数:2 大小:24.50KB
下载 相关 举报
不同数据库update实现多表更新.doc_第1页
第1页 / 共2页
不同数据库update实现多表更新.doc_第2页
第2页 / 共2页
亲,该文档总共2页,全部预览完了,如果喜欢就下载吧!
资源描述

1、不同数据库 update 实现多表更新在开发中,数据库来回换,而有些关键性的语法又各不相同,这是一件让开发人员很头痛的事情.本文总结了 Update 语句更新多表时在SQLServer,Oracle,MySQL 三种数据库中的用法.我也试了 SQLite 数据库,都没成功,不知是不支持多表更新还是咋的. 在本例中: 我们要用表 gdqlpj 中的gqdltks,bztks 字段数据去更新 landleveldata 中的同字段名的数据,条件是当landleveldata 中的 GEO_Code 字段值与 gdqlpj 中的 lxqdm 字段值相等时进行更新.SQL Server 语法:UPDA

2、TE table_name WITH ( .n ) | view_name | rowset_function_limited SET column_name = expression | DEFAULT | NULL | variable = expression | variable = column = expression ,.n FROM ,.n WHERE | WHERE CURRENT OF GLOBAL cursor_name | cursor_variable_name OPTION ( ,.n ) SQL Server 示例: update a set a.gqdltks=

3、b.gqdltks,a.bztks=b.bztks from landleveldata a,gdqlpj b where a.GEO_Code=b.lxqdmOracle 语法: UPDATE updatedtable SET (col_name1,col_name2.)= (SELECT col_name1,col_name2. FROM srctable WHERE where_definition)Oracel 示例: update landleveldata a set (a.gqdltks, a.bztks)= (select b.gqdltks, b.bztks from gdq

4、lpj b where a.GEO_Code=b.lxqdm)MySQL 语法: UPDATE table_references SET col_name1=expr1 , col_name2=expr2 . WHERE where_definitionMySQL 示例: update landleveldata a, gdqlpj b set a.gqdltks= b.gqdltks, a.bztks= b.bztks where a.GEO_Code=b.lxqdm有 A、B 张表,其记录如下:A 表c1 c2-1 a12 a23 a38 a8B 表c1 c3-1 b12 b13 b310 b10A.c1 与 B.c1 相等,用一条 sql 语句,实现 A.c2 的值更新为 B.c3-UPDATE ASET A.c2 =B.c3from A ,Bwhere A.c1=B.c1UPDATE ASET A.c2 =B.c3from A inner join B on A.c1=B.c1 注意:update 后面是不能跟多表的,但跟在 from 子句后面。

展开阅读全文
相关资源
相关搜索
资源标签

当前位置:首页 > 教育教学资料库 > 精品笔记

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。